设置mysql远程连接root权限

在远程连接mysql的时候应该都碰到过,root用户无法远程连接mysql,只可以本地连,对外拒绝连接。
需要建立一个允许远程登录的数据库帐户,这样才可以进行在远程操作数据库。
方法如下:
默认情况下MYSQL数据库的系统数据库mysql系统表user内用户权限只提供localhost本机登陆;
需要更改权限才能实现远程连接MYSQL数据库。
可以通过以下方式来确认:
root#mysql -h localhost -uroot -p
Enter password: ******
Welcome to the MySQL monitor.   Commands end with ; or \g.
Your MySQL connection id is 4 to server version: 4.0.20a-debug
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> use mysql; (此DB存放MySQL的各种配置信息)
Database changed
mysql> select host,user from user; (查看用户的权限情况)
mysql> select host, user, password from user;
+-----------+------+-------------------------------------------+
| host       | user | password                                   |
+-----------+------+-------------------------------------------+
| localhost | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| 127.0.0.1 | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| localhost |       |                                            |
+-----------+------+-------------------------------------------+
4 rows in set (0.01 sec)
由此可以看出,只能以localhost的主机方式访问。
解决方法:
mysql> Grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘123456‘ with grant option;
(%表示是所有的外部机器,如果指定某一台机,就将%改为相应的机器名;‘root’则是指要使用的用户名,)
mysql> flush privileges;    (运行此句才生效,或者重启MySQL)
Query OK, 0 rows affected (0.03 sec)
再次查看。。
mysql> select host, user, password from user;
+-----------+------+-------------------------------------------+
| host       | user | password                                   |
+-----------+------+-------------------------------------------+
| localhost | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| 127.0.0.1 | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
| localhost |       |                                            |
| %          | root | *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
+-----------+------+-------------------------------------------+
4 rows in set (0.01 sec)
可以看出已经添加了一个新的用户
退出,试试效果....
现在可以成功登录了..

时间: 2024-10-11 16:59:12

设置mysql远程连接root权限的相关文章

建立mysql可远程连接root权限用户

大家在远程连接mysql的时候应该碰到过,root用户的mysql,只可以本地连,对外拒绝连接. 我们需要建立一个允许远程登录的数据库帐户,这样你可以方便进行在本地远程操作数据库了. 方法如下: 1.确认登陆权限 默认情况下Linux内的mysql数据库mysql,user表内的用户权限只是对localhost即本机才能登陆. 需要更改权限: 如下的方式确认: root#mysql -h localhost -u mysql -p Enter password: ****** Welcome t

开启mysql远程连接访问权限的几种方法

1.改表法. 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -pvmware//账号root,密码vmwaremysql>use mysql; mysql>update user set

mysql 远程连接超时解决办法

设置mysql远程连接root权限 在远程连接mysql的时候应该都碰到过,root用户无法远程连接mysql,只可以本地连,对外拒绝连接. 需要建立一个允许远程登录的数据库帐户,这样才可以进行在远程操作数据库. 方法如下: 默认情况下MYSQL数据库的系统数据库mysql系统表user内用户权限只提供localhost本机登陆: 需要更改权限才能实现远程连接MYSQL数据库. 可以通过以下方式来确认: root#mysql -h localhost -uroot -p Enter passwo

Centos6.5 重置mysql密码,并设置允许远程连接

root密码忘记,重置mysql的root密码: 一.修改mysql的配置文件my.cnf 1.在[mysqld]的段中加上一句:skip-grant-tables [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock skip-name-resolve skip-grant-tables 保存并且退出vi. (或执行 mysqld_safe --skip-grant-tables &) 2.重新启动mysqld # /

设置允许远程连接MySQL (Ubuntu为例)

MySQL默认配置是不允许远程连接,为了安全! 然而我需要这么做; 开始改配置; #1 设置用户权限 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> use mysql #查看当前设置 mysql> select host,user from user; #修改 mysql> UPDATE user SET host='%' WHERE user='root' AN

Centos下解决mysql远程连接端口和权限的问题

1.在CentOS系统中防火墙默认是阻止3306端口的,我们要是想访问mysql数据库,我们需要这个端口,命令如下:  /sbin/iptables -I INPUT -p tcp --dport 3036 -j ACCEPT 我们需要保存我们的操作,命令如下:   /etc/rc.d/init.d/iptables save 此时我们可以查看端口的状态,命令如下:  /etc/init.d/iptables status 当然如果你打开其他端口也一样,只需要把这个端口号换乘你需要的端口号即可.

[转]阿里云配置mysql远程连接

[转]阿里云配置mysql远程连接 默认是不能用客户端远程连接的,阿里云提供的help.docx里面做了设置说明,mysql密码默认存放在/alidata/account.log 首先登录: mysql -u root -h localhost -p use mysql                #打开mysql数据库 #将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip update user set host='%' where user='root'

mysql1130远程连接没有权限的解决方法

远程连接没有权限的原因有两种,一个是因为mysql的限制,一个是防火墙的限制. 1,解决防火墙限制: 在mysql服务主机上将防火墙关闭或者在防火墙高级设置里面加入出入站规则,加上mysql的端口,允许通过mysql的端口进行访问主机. 2,解决mysql的限制,在mysql服务主机上执行下列sql [sql] view plaincopy -- 更改root用户的登录主机为任意主机 UPDATE USER SET Host = '%' WHERE User = 'root'; -- 更改权限(

阿里云配置mysql远程连接

默认是不能用客户端远程连接的,阿里云提供的help.docx里面做了设置说明,mysql密码默认存放在/alidata/account.log 首先登录: mysql -u root -h localhost -p use mysql                #打开mysql数据库 #将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip update user set host='%' where user='root' and host='localho