1. 前置条件:
- 华为云 centos7.5 环境下
- docker 已经安装完成
- docker 服务已经启动
2. 拉取mysql:5.7的docker镜像
[root@laoliu mysql5.7]
Trying to pull repository docker.io/library/mysql ...
5.7: Pulling from docker.io/library/mysql
fc7181108d40: Pull complete
787a24c80112: Pull complete
a08cb039d3cd: Pull complete
4f7d35eb5394: Pull complete
5aa21f895d95: Pull complete
a742e211b7a2: Pull complete
0163805ad937: Pull complete
62d0ebcbfc71: Pull complete
559856d01c93: Pull complete
c849d5f46e83: Pull complete
f114c210789a: Pull complete
Digest: sha256:c3594c6528b31c6222ba426d836600abd45f554d078ef661d3c882604c70ad0a
Status: Downloaded newer image for docker.io/mysql:5.7
[root@laoliu mysql5.7]
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/mysql 5.7 a1aa4f76fab9 11 days ago 373 MB
[root@laoliu mysql5.7]
3. 预先配置
[root@laoliu mysql5.7]
[root@laoliu mysql5.7]
total 0
drwxr-xr-x. 2 root root 6 Mar 10 10:01 conf
drwxr-xr-x. 2 root root 6 Mar 10 10:01 data
[root@laoliu mysql5.7]
/home/project/mysql5.7
4. 建立配置文件
- 坑1: 配置文件最好是以
.cnf
作为后缀, 试过以.conf
后缀, 可以启动mysql, 但配置文件不起作用.
- 坑2: 修改完配置文件, 记得
docker restart containername
一下
[root@laoliu conf]
/home/project/mysql5.7/conf
[root@laoliu conf]
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init_connect='SET collation_connection = utf8mb4_unicode_ci'
init_connect='SET NAMES utf8mb4'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
sql_mode= STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_allowed_packet=10M
default-time_zone='+8:00'
[root@laoliu conf]
5. 运行命令
[root@laoliu conf]