mysql8.0.13 的docker镜像安装
程序员文章站
2022-04-23 09:17:48
1、从docker中获取mysql8.0.13镜像 2、运行 mysql8.0.13 镜像 3、登陆mysql 4、解决方法:进入mysql8.0.13容器 5、在容器里面登陆数据库 6、进入mysql库,查看user表,可以看到root加密方式 7、修改root用户插件验证方式: 8、刷新权限 9 ......
1、从docker中获取mysql8.0.13镜像
docker pull mysql:8.0.13
通过 docker images 命令查看镜像是否获取到了
2、运行 mysql8.0.13 镜像
docker run --name mysql8013 -p 8323:3306 -e mysql_root_password=root -d mysql:8.0.13
通过 docker ps 命令查看镜像是否启动成功
3、登陆mysql
mysql -uroot -proot -d mysql8013
发现登陆不上去,因为mysql8之后root用户的密码验证方式变了。root的用户的加密方式为caching_sha2_passoword,而navicat连接所用的方式为native_password。
4、解决方法:进入mysql8.0.13容器
docker exec -it mysql8013 /bin/bash
5、在容器里面登陆数据库
mysql -uroot -proot
mysql为远程连接和本地连接提供了不同的密码验证方式。所以在容器里可以登陆。
6、进入mysql库,查看user表,可以看到root加密方式
use mysql;
select host, user, plugin from user \g
7、修改root用户插件验证方式:
alter user 'root'@'%' identified with mysql_native_password by 'root';
8、刷新权限
flush privileges;
9、然后退出mysql
exit;
10、给mysql8013安装vim编辑器
apt-get update && apt-get install vim -y
11、安装vim完成后,修改数据库编码
进入mysql.cnf
vim /etc/mysql/conf.d/mysql.cnf
增加以下内容,然后保存退出
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
12、查看mysql编码
show variables like'character%'; -- 如果编码没变,可能要重启这个mysql容器
13、退出 mysql8013容器
ctrl+d
14、查看mysql8013数据卷挂载位置:
docker inspect mysql8013
然后观察 "mounts"对应的值,其中 "source" 对应的值就是本机的挂载路径。
15、通过 navicat 测试连接。
上一篇: 张苍在秦朝当过官,却成了汉朝的开国功臣
下一篇: lvs dr 模型配置详解