docker安装mysql8


docker pull mysql:8.0.18

docker images

docker run -itd --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.18

docker ps是否安装成功;

进入容器 docker exec -it 容器id bash

进入数据库 mysql -uroot -p123456

use mysql;

select host,user from user; 让root能远程连接,host修改为"%"

 

 

 

 修改host为%的方法 update user set host='%' where user='root';

navicate for mysql 远程连接

use mysql;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

FLUSH PRIVILEGES;

此时使用navicat for mysql 远程连接,提示认证问题,因为mysql8及之后的加密规则与之前版本的不同,

 ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

FLUSH PRIVILEGES; #刷新权限;

这样navicat for mysql就可以连接数据库了;

docker commit 容器id  指定要创建的镜像名:版本号

备注:ip:3306始终访问不了,无解ing;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM