一、docker-compose.yml文件
version: '3' networks: localnet: external: name: localnet services: mysql: image: mysql:5.7 container_name: mysql networks: - localnet command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_bin command: --init-file /docker-entrypoint-initdb.d/init.sql restart: always environment: MYSQL_ROOT_PASSWORD: 123456 #設置root帳號密碼 TZ: Asia/Shanghai LANG: en_US.UTF-8 networks: - localnet ports: - 3306:3306 volumes: - ./data/db:/var/lib/mysql - ./conf/my.cnf:/etc/mysql/conf.d/my.cnf - ./log:/var/log/mysql - ./sql/init.sql:/docker-entrypoint-initdb.d/init.sql
二、my.cnf文件
[mysqld] lower_case_table_names=1 max_connections=1000 max_connect_errors=60 open_files_limit=1024 table_open_cache=128 read_buffer_size=20M query_cache_size=8M query_cache_limit=2M max_allowed_packet=256M
三、init.sql文件
create database if not exists 數據庫名 default character set UTF8mb4 collate utf8mb4_unicode_ci;