1.安装Docker-compose
yum -y install epel-release ; yum -y install docker-compose
2.编写docker-compose.yml文件,内容如下
volumes选项中,有三个映射
./conf/my.cnf:/etc/my.cnf
本地当前目录下的mysql配置文件./conf/my.cnf映射到容器的/etc/my.cnf
./conf/mysql:/etc/mysql
本地当前目录下的mysql配置配置目录./conf/mysql映射到容器的/etc/mysql
/home/appadmin/data/mysql:/var/lib/mysql
本地的mysql数据目录/home/appadmin/data/mysql映射到容器的/var/lib/mysql
MYSQL_ROOT_PASSWORD: “123456WEDCF”
这里是定义的mysql的root用户密码为:123456WEDCF
version: '3.5'
services:
mysql:
restart: always
image: mysql:5.7.36
container_name: mysql_5.7.36
environment:
MYSQL_ROOT_PASSWORD: "123456WEDCF"
volumes:
- ./conf/my.cnf:/etc/my.cnf
- ./conf/mysql:/etc/mysql
- /home/appadmin/data/mysql:/var/lib/mysql
ports:
- 3306:3306
mysql的my.cnf配置如下
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
innodb_force_recovery=0
max_connections = 2000
sql-mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
skip-name-resolve
#skip-grant-tables
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
在docker-compose.yml文件所在的目录,直接运行命令
docker-compose up
如果数据库运行成功,会出现如下画面
运行成功后,可以Ctrl+c取消当前阻塞的命令行,直接运行docker-compose up -d 让mysql后台启启动。