docker安装mysql8
·
docker安装mysql8
一、准备工作
(1)安装docker(docker-compse)
(2)创建相关目录
#创建home目录下mysql文件夹和mysql里的conf,data,log三个文件
mkdir -p /data/mysql/{conf,data,log}
# 赋予 conf 目录读和写的权限 (rwxr-xr-x)
chmod 755 /data/mysql/conf
chmod 755 /data/mysql/data
chmod 755 /data/mysql/log
#创建配置文件
touch /data/mysql/conf/my.cnf
进入my.cof编写配置
[mysqld]
# -------------------- 远程连接 --------------------
# 默认密码插件,兼容旧版本的客户端
default_authentication_plugin=mysql_native_password
# authentication_policy=mysql_native_password,caching_sha2_password
# -------------------- 字符集与排序规则 --------------------
# 服务器默认字符集(MySQL 8 强烈建议 utf8mb4)
character-set-server = utf8mb4
# 默认排序规则(utf8mb4_unicode_ci 或 utf8mb4_general_ci,前者更精确)
collation-server = utf8mb4_unicode_ci
# 客户端连接时默认字符集(兼容旧客户端)
init-connect = 'SET NAMES utf8mb4'
# -------------------- 时区设置 --------------------
# 默认时区(中国为 +8:00)
default-time-zone = '+8:00'
二、运行mysql
(1)直接运行
docker run -d \
--name mysql8 \
--restart=always \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=your_root_password \
-e TZ=Asia/Shanghai \
-v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf:ro \
-v /data/mysql/data:/var/lib/mysql \
-v /data/mysql/log:/var/log/mysql \
mysql:8.0.36
-d 后台运行
–name mysql8 容器名称
–restart=always 容器异常退出自动重启
-p 3306:3306 映射端口(宿主机:容器)
-e MYSQL_ROOT_PASSWORD=xxx 必须设置,root 密码
-e TZ=Asia/Shanghai 设置容器时区
-v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf:ro 挂载配置文件(:ro 只读)
-v /data/mysql/data:/var/lib/mysql 挂载数据目录(持久化)
-v /data/mysql/log:/var/log/mysql 挂载日志目录(持久化)
mysql:8.0.36 指定版本号
(2)使用docker compos运行
创建目录
mkdir -p /compose/env
touch /compose/env/compose.yaml
进入/compose/env/compose.yaml编写
services:
mysql:
image: mysql:8.0.36
container_name: mysql
restart: always
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: your_root_password
TZ: Asia/Shanghai
volumes:
- /data/mysql/conf/my.cnf:/etc/mysql/my.cnf:ro
- /data/mysql/data:/var/lib/mysql
- /data/mysql/log:/var/log/mysql
启动
#进入目录
cd /compose/env
#启动
docker compose up -d
更多推荐
所有评论(0)