Mysql 5.7
docker-compose.yml
version: '3.1'services:mysql5.7:image: mysql:5.7.33command: --default-authentication-plugin=mysql_native_passwordrestart: alwaysenvironment:- TZ=Asia/Shanghai- MYSQL_ROOT_PASSWORD=root- MYSQL_DATABASE=初始数据库volumes:- ./mysql/mysql5.7/my.cnf:/etc/mysql/my.cnf- ./mysql/mysql5.7/data:/var/lib/mysqlports:- 3306:3306
下面简单说下重要参数作用:
- MYSQL_DATABASE:初始化数据库,比如定义 demo,那么在容器启动后,会自动创建一个 demo 的数据库
- TZ=Asia/Shanghai:控制该容器的时区
my.cnf 如果需要配置的话,可以使用如下的配置
[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_general_cilower_case_table_names=1max_allowed_packet=32Mmax_connections=1024open_files_limit=65535tmp_table_size=124Minteractive_timeout=300max_connect_errors=10000group_concat_max_len=2048thread_cache_size=20thread_stack=192Ktransaction-isolation = READ-COMMITTEDkey_buffer_size=128Mread_buffer_size=8Mread_rnd_buffer_size=16Mjoin_buffer_size=16Msort_buffer_size=16Mmax_heap_table_size=123M
Mysql 8.0
Mysql 8.0 官方文档、docker mysql 官方文档
docker-compose.yml
version: '3.1'services:mysql8_01:container_name: mysql8_01image: mysql:8.0command: --default-authentication-plugin=mysql_native_passwordrestart: alwaysenvironment:TZ: Asia/ShanghaiMYSQL_ROOT_PASSWORD: rootvolumes:# - ./mysql8_01/my.cnf:/etc/mysql/my.cnf- ./mysql8_01/data:/var/lib/mysqlports:- 3306:3306
- 配置文件暂无。
