为什么要写这个MySQL无法访问问题呢?
- 调试mysql无法重连,这个是本地安装和docker都会遇到的问题
- 这个问题折磨了我两个小时,备注记录一下
-
docker 安装mysql
docker pull mysql
-
#启动mysql
docker start mysql
-
#进入容器
docker exec -it 容器id /bin/bash
-
#登录进入mysql
mysql -uroot -p 输入密码登录成功后!
-
修改密码用户密码:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
-
#重启mysql
docker restart 容器id
为什么mysql8.0版本连接不上呢?
可能是因为mysql8.0默认使用caching_sha2_password身份验证机制;客户端不支持新的加密方式;
1、接口查看用户的信息:
select host,user,plugin,authentication_string from mysql.user;
2、#修改加密方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
3、#再次查看用户信息
select host,user,plugin,authentication_string from mysql.user;
出现plugin字段对应的mysql_native_password即可;