设置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 'kdm001' 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)
可以看出已经添加了一个新的用户
退出,试试效果....
现在可以成功登录了..
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
远程连接MySQL,需要进行以下步骤: 1. 首先,确认MySQL是否允许远程登录。默认情况下,MySQL只允许本地登录。如果需要远程访问数据库,需要修改MySQL的配置文件。可以通过修改`my.cnf`文件中的`bind-address`参数,将其改为服务器的IP地址或者`0.0.0.0`来允许所有IP地址的远程连接。 2. 确保在MySQL中创建了允许远程连接的用户。可以使用以下命令在MySQL中创建一个允许远程连接的用户: ``` CREATE USER '用户名'@'远程主机IP' IDENTIFIED BY '密码'; ``` 例如,要创建一个名为root,密码为root的用户,可以使用以下命令: ``` CREATE USER 'root'@'%' IDENTIFIED BY 'root'; ``` 此命令将创建一个允许从任何远程主机连接的root用户。 3. 授予新创建的用户远程连接权限。可以使用以下命令为用户授予远程连接权限: ``` GRANT ALL PRIVILEGES ON *.* TO '用户名'@'远程主机IP'; ``` 例如,要为root用户授予从任何远程主机连接的权限,可以使用以下命令: ``` GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';``` 这将授予root用户从任何远程主机连接到MySQL服务器的权限。 4. 最后,重新加载MySQL权限表,以使更改生效。可以使用以下命令重新加载权限表: ``` FLUSH PRIVILEGES; ``` 这样,你就可以使用远程主机上的MySQL客户端连接到MySQL服务器了。记得使用相应的用户名和密码进行连接。 要查看MySQL中的用户及其连接权限,可以使用以下命令: ``` USE mysql; SELECT User, authentication_string, Host FROM user; ``` 这将显示MySQL中的用户列表以及其对应的连接权限。 综上所述,要实现MySQL远程连接权限,需要修改MySQL的配置文件以允许远程连接,创建允许远程连接的用户,并为该用户授予相应的权限。然后,通过MySQL客户端使用相应的用户名和密码进行远程连接。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值