社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
1. 先检查自己服务器是否存在安全组或者防火墙限制导致无法访问
2. 查看docker启动mysql容器的时候是否绑定了端口, 我这里是3306
3. 查看mysql用户是否具有访问权限权限
docker exec -it 你的容器名称 bash
进入控制台后 mysql -uroot -p 然后输入你的root密码进入mysql;
use mysql;
select user,host from user;
查看自己的root的host是否是 % , 默认只有localhost 也就是只能本机访问, 如果没有则创建一条
create user 'root'@'%' IDENTIFIED BY 'pwd123456';
4. 这时候您可能还会报错如下, 就修改密码模式, 因为mysql 8.0 之后默认都是使用caching_sha2_password
ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
//这里的123456是密码 建议复杂一点
注意: 不能直接使用update user set plugin='mysql_native_password' where user = 'root', 这种方式, 用第四条里的语句, 我这里就是这样改了,然后试了好多次还是连接不上
感谢您的阅读!如果文章中有任何错误,或者您有更好的理解和建议,欢迎和我联系!
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!