docker mysql-8.0.27
# docker mysql:8.0.27
mkdir -p /var/lib/mysql/data /var/lib/mysql/conf /var/lib/mysql/log /var/lib/mysql/sql chmod -R 777 /var/lib/mysql/
my.cnf
[client]
# 客户端默认字符编码
default_character_set=utf8
[mysqld]
skip-host-cache
skip-name-resolve
# 服务端设置字符编码与规则
collation_server=utf8_general_ci
character_set_server=utf8
# 传输过程当中允许的最大数据包大小
max_allowed_packet=1024M
# 最大连接数
max_connections=1000
# 服务器关闭非交互(客户端)连接之前等待活动的秒数
wait_timeout=2147483
# 服务器关闭交互式(mysql终端)连接前等待活动的秒数
interactive_timeout=2147483
# 连接超时
connect_timeout=20
# 客户端线程最大数量
thread_cache_size=256
# 表名大小写敏感设置:
# 0 表名存储为给定的大小和比较是区分大小写的
# 1 表名存储为小写的,但是比较的时候是不区分大小写
# 2 表名存储为给定的大小写,但是比较的时候是小写的
# Windows下默认值是 1,Mac OS X下默认值是 2
# lower_case_table_names=0
docker 命令:
docker run -d --restart=always --name hite-mysql \ --privileged=true \ -v /var/lib/mysql/conf:/etc/mysql/conf.d \ -v /var/lib/mysql/data:/var/lib/mysql \ -v /var/lib/mysql/logs:/var/log/mysql \ -p 3306:3306 \ -e TZ=Asia/Shanghai \ -e MYSQL_ROOT_PASSWORD=xin123456 \ mysql:8.0.27 \ --character-set-server=utf8mb4 \ --collation-server=utf8mb4_general_ci