下载镜像

docker pull mysql

创建容器

docker run --name mysql8 mysql:latest

复制配置文件

# 用于映射MySQL配置
mkdir -p /data/mysql8/conf.d
# 用于映射MySQL数据目录
mkdir -p /data/mysql8/data

# 复制出主配置文件
docker cp mysql8:/etc/my.cnf /data/mysql8/

# 修改目录权限
chown -R 999 /data/mysql8
chgrp -R 999 /data/mysql8

# 关闭并移除容器
docker stop mysql8
docker rm mysql8

重新创建容器

# 重新创建容器
docker run -d \
--name mysql8 \
--restart=always \
-p 3308:3306 \
-v /data/mysql8/data:/var/lib/mysql \
-v /data/mysql8/conf.d:/etc/mysql/conf.d \
-v /data/mysql8/my.cnf:/etc/my.cnf \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:latest

开放端口(可选)

# 永久打开3308/TCP端口
firewall-cmd --permanent --add-port=3308/tcp

# 永久打开端口需要reload一下,临时打开不用,如果用了reload临时打开的端口就失效了
firewall-cmd --reload

参考链接 https://segmentfault.com/a/1190000040980219

密码修改、权限配置参考

https://segmentfault.com/a/1190000042212179


YYGP
25 声望11 粉丝

写BUG