问题的说明
1 Docker 中安装 Mysql 5.7 的镜像后,远程连接Mysql报错:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using passwor is ”YES“)
导致的原因
1、没有给 MySQL中的 root@% 用户进行授权
解决的步骤
1、编辑 my.cnf 文件 ,添加下面的 skip-name-resolve 配置 , 实现免密登入
[mysqld]
skip-name-resolve
2、给用户授权
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ’ YOU-PASSWORD ’ WITH GRANT OPTION;
- 如果报下面的错误:
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
执行以下 : flush privileges; 然后在执行 前面的授权语句即可
3、刷新权限
flush privileges;
4、修改 my.cnf 配置文件,去掉 skip-name-resolve ,然后重启