Docker 启动 MySQL 使用 my.cnf
Docker 安装 MySQL
·
一、下载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:后台运行容器--name:MySQL容器名称-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.0:mysql(repository):8.0(tag)

D、查看是否启动成功
a、查看MySQL容器是否运行
# 列出所有在运行的容器信息
docker ps

b、登录MySQL容器mysql8命令行模式
# mysql8:容器名
docker exec -it mysql8 bash
# 登录mysql
mysql -uroot -p123456

更多推荐



所有评论(0)