mysql开启远程连接
今天在服务器安装了mysql,准备用mysqlguitools远程登录的时候出错,提示:Host 'xxx' is not allowed to connect to this MySQL server。网上找了一些资料,是mysql未开启mysql远程访问权限导致。
记录解决方案供以后参考。
打开:MySQL 8.0 Command Line Client 并登录
第一种(改表法):
mysql> use mysql
mysql> update user set host = '%' where user = 'root';
mysql> flush PRIVILEGES;
修改成功,输入命令 回车使刚才的修改生效,再次远程连接数据库成功。
第二种(授权法):
例如,你想root使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY
'mypassword' WITH GRANT OPTION;
输入命令mysql> FLUSH PRIVILEGES; 回车使刚才的修改生效,再次远程连接数据库成功。bingo.
别忘记最后的FLUSH PRIVILEGES; 刷新先前的修改。