Docker安装MySQL

1,docker 仓库搜索mysql

docker search mysql

 

 

2,docker 仓库拉取mysql8.0

docker pull mysql:8.0

 

 

3,查看本地仓库镜像是否下载成功

docker images mysql:8.0
备注: 因为我docker目前只有这一个镜像,我就用 docker images 查看了

 

 

4,安装运行mysql8.0

复制代码
docker run \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root \
-v /home/docker/mysql/data:/var/lib/mysql:rw \
-v /home/docker/mysql/log:/var/log/mysql:rw \
-v /home/docker/mysql/mysql-files:/var/lib/mysql-files/ \
--name mysql8.0 \
--restart=always \
-d mysql:8.0
 
上面代码的意思是: docker run -p 本地主机端口号:容器服务端口号 --name 容器名字 [-e 配置信息修改] -d 镜像名字

拷贝配置文件到宿主机:
docker cp mysql8.0:/etc/mysql/my.cnf /home/docker/mysql/conf/

停止容器:
docker stop mysql8.0

删除容器:
docker rm mysql8.0

查看mysql8.0容器运行情况
docker ps

进入mysql,根据上面查询到的容器id执行
docker exec -it mysql8.0 bash

连接mysql
mysql -uroot -p
输入密码
切换数据库 use mysql 使用客户端工具远程连接mysql 因为mysql8.x 版本的密码加密的方式,Navicat识别不了。先去查看mysql8.0的版本加密方式。
select host,user,authentication_string,plugin from user; 我们需要将mysql的加密方式改成 mysql_native_password。 alter user 'root'@'%' identified with mysql_native_password by 'root';(修改加密方式,复制到控制台可能单引号丢失,检查下如果丢失,手动输入) select host,user,authentication_string,plugin from user;(查看是否将加密方式修改过来) 然后再去navicat 连接就好了。
复制代码

 

posted @   四毛二  阅读(42)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示