- 问题出处:
我用的是root用户登录 - 解决方案:
- 确认密码,如果不正确重试,如果确定正确就进行下一步;
- 确定从MySQL所在容器是否启动,如果没有启动输入sudo docker container start 容器id或者服务名称,如果已经启动,如图所示:
那么就进行第三步
- 进入mysql所对应容器内部,输入命令: sudo docker exec -ti 412a3fb50035(即容器id,也可以输入412a,因为匹配容器id是从左至右开始匹配,所以输入412a足以精确地定位到该容器) bash,然后输入mysql -uroot -p,之后输入正确的密码即可进入从MySQL中,如图所示:
之后修改数据库mysql中的表中的user表信息,步骤如下:
1): 使用数据库mysql: use mysql;
2): 查看user表中的重要信息:select user, host from user;
发现root对应的host是localhost,即只能在本机上登录,我们要修改其为%,表示可以在任何机器上登陆;
3): 修改从服务器root的host属性:update user set host=’%’ where user=‘root’;
4): 刷新权限:flush privileges;
5): 查看选在root的host:select user, host from user;
6): 再次登录就OK了