Docker 启动 MySQL 使用 my.cnf - Go语言中文社区

Docker 启动 MySQL 使用 my.cnf


一、下载MySQL镜像


二、挂载配置数据到宿主机

A、宿主机创建目录

my.cnf配置存放目录、data数据存放目录

mkdir -p /data/docker/mysql/config/
mkdir -p /data/docker/mysql/data/

B、宿主机创建my.cnf文件

/data/docker/mysql/config/my.cnf

[client]
default-character-set=utf8

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password

C、创建MySQL容器

docker run -d 
	       --name mysql8 
	       -p 3309:3306 
           --restart always 
           --privileged=true 
           -e MYSQL_USER="mysql" 
           -e MYSQL_PASSWORD="password" 
           -e MYSQL_ROOT_PASSWORD="password" 
	       -e character-set-server=utf8 
	       -e collation-server=utf8_general_ci 
           -v=/data/docker/mysql/config/my.cnf:/etc/my.cnf 
           -v=/data/docker/mysql/data:/var/lib/mysql 
    	   mysql:8.0

参数说明:

  • -d:后台运行容器
  • --nameMySQL容器名称
  • -p:将容器的3306端口映射到主机的3309端口。
  • –restart always:开机启动
  • –privileged=true:提升容器内权限(false可能会因权限导致无法启动)
  • -e:设置环境变量
    • MYSQL_USER:添加用户
    • MYSQL_PASSWORD:设置添加用户密码
    • MYSQL_ROOT_PASSWORD:设置root用户密码
    • character-set-server:设置字符集
    • collation-server:设置字符比较规则
  • -v
    • -v=/data/docker/mysql/config/my.cnf:/etc/my.cnf:映射配置文件
    • v=/data/docker/mysql/data:/var/lib/mysql:将容器的 /var/lib/mysql目录挂载到主机/data/mysql/docker_3306目录。
  • mysql:8.0mysql(repository) : 8.0(tag)

在这里插入图片描述


D、查看是否启动成功

a、查看MySQL容器是否运行

# 列出所有在运行的容器信息
docker ps

在这里插入图片描述
b、登录MySQL容器mysql8命令行模式

# mysql8:容器名
docker exec -it mysql8 bash 

# 登录mysql
mysql -uroot -p123456

在这里插入图片描述

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/yhj19920417/article/details/72822205
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢