目录
MySQL开启用户远程登录权限开放MySQL的远程访问权限总结MySQL开启用户远程登录权限
当在Docker中创建一个Mysql的容器后,需要使用工具如:navicate来连接容器内的MySQL服务,但是
【资料图】
提示Access denied for user "root"@ "x.x.x.x" (using password: YES) 错误,用命令进入容器确认密码没有问题,那么就可能是没有开发远程权限。
第一步:选中mysql数据库
use mysql;
第二步:修改库中user表中,user用户的host=%(任意连接)
update user set host="%" where user ="root";
第三步:重新加载权限表
flush privileges;
第四步:给root用户赋予远程连接权限
grant all privileges on *.* to "root"@"%" with grant option; # 赋予权限并修改密码 alter user "root"@"%" identified with mysql_native_password by "123456";
开放MySQL的远程访问权限
1.使用 mysql -u root -p 连接到本地MySQL服务
2.登录后使用 use mysql;
3.使用 grant all privileges on . to ‘root’@‘%’ identified by ‘123456’ with grant option; 赋予远程登录用户权限(使用root账号和密码123456,从任何主机连接到mysql服务器),刷新权限 FLUSH PRIVILEGES;
4.使用 select user,host from user 查看系统用户
5.使用 vim /etc/mysql/mysql.conf.d/mysqld.cnf 修改bind-address的访问网址,将 bind-address=127.0.0.1 改成 bind-address=0.0.0.0
6.开放端口 3306(这是MySQL的默认端口)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。