Docker安装MySQL8
确认本机docker可用后,执行以下流程
1、docker search mysql
如下图,这里使用第一行的mysql镜像
2、docker pull mysql
3、docker images 来确保成功加载到本地仓库
4、docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_ PASSWORD=root -d mysql
如图,会生成一串hash码,这就是本次镜像实例出的mysql执行程序的id,以后可用根据这个实例 id或者name对其做操作,比如:
docker start a450a59xxxxxx 或者 docker start mysql // docker run 命令执行后会自动执行start
docker stop a450a59xxxxxx 或者 docker stop mysql
docker rm a450a59xxxxxx 或者 docker rm mysql
5、docker exec -it mysql bash
进入mysql,然后输入账户密码:mysql -uroot -p 回车,然后输入密码
6、本地去连接mysql时报错,错误 2058 Plugin caching_sha2_password could not be loaded
由于mysql8.0的加密方法变了。mysql8.0默认采用caching_sha2_password的加密方式。sqlyog不支持这种加密方式。
解决办法
必须进入mysql命令行
1、修改密码过期
ALTER USER'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
2、重新修改密码
ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
3、刷新权限(不做可能无法生效)
FLUSH PRIVILEGES;
再次连接成功。
7、如果是连接云服务器,请确保端口对外可用