MySQL8 远程访问设置
在Server安装MySQL8.0完毕后,在Client用Workbench访问发现连不上,提示:
Failed to connect to mysql at with user root, Host ***** is not allowed to connect to this MySQL server.
- 登录MySQL 检查mysql.user表里用户权限。发现root账户host 值为localhost

- 对root账户更新localhost 为 % (% 表示允许外部访问).
update user set host = '%' where user = 'root';

- 执行 FLUSH PRIVILEGES 。
- 赋予权限GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

- 用Workbench尝试连接。

- 连接成功。
Note:flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。
如果仍连不上,请确认防火墙是否关闭,或开放3306端口。
本文介绍了MySQL8远程访问的设置方法。在Server安装MySQL8.0后,Client用Workbench无法连接,通过登录MySQL检查用户权限,将root账户host值从localhost更新为%,执行FLUSH PRIVILEGES和赋予权限命令,可实现连接。若仍连不上,需确认防火墙或开放3306端口。
788

被折叠的 条评论
为什么被折叠?



