开启mysql 远程访问权限

mysql-server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 web-server 与 mysql-server 都在同一台服务器上的网站架构来说是没有问题的. 但随着网站流量的增加, 后期服务器架构可能会将 web-server 与 mysql-server 分别放在独立的服务器上, 以便得到更大性能的提升, 这样其他节点的web-server就不能链接到mysql,或者是我们用一些mysql可视化管理工具远程连接也连接不了的,此时 mysql 就要修改成允许进行远程连接.

1、登录mysql:

mysql -u root -p

输入密码

2、修改mysql用户配置

mysql> use mysql       //切换到mysql DB

mysql> SELECT User, Password, Host FROM user;     //查看现有用户,密码及允许连接的主机

从上图我们可以看到可链接用户列表、密码及可链接host

下面我们另外添加一个新的 root 用户, 密码为空, 只允许 192.168.0.68 连接,命令如下:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.68' IDENTIFIED BY  ''  WITH GRANT OPTION;

然后我们在看一下用户列表,可以看到我们添加的信息

当然   @'192.168.0.68'可以替换为@‘%’就可任意ip访问

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY  ''  WITH GRANT OPTION;

实际应用当中我们一定要设置密码哈!!!

 

3、添加完用户后要推送设置到内存

mysql> flush privileges;      //这一步很重要哦

 

2022/08/11 更新

mysql 8.0.3版本:

查看 表的权限:

 select host,user,plugin,authentication_string from mysql.user;

  

 

 更新权限:

 alter user 'root'@'localhost' identified with mysql_native_password by '663342whd';

  

 

posted @ 2017-05-26 10:40  瘦瘦的青蛙  阅读(4518)  评论(0编辑  收藏  举报