1.运行mysql8容器实例并挂载数据卷
-e:配置环境变量
--lower_case_table_names=1 设置忽略表名大小写一定要放在镜像之后运行mysql8容器实例之前,先查看是否存在mysql8镜像以及是否存在已运行的mysql实例docker run -d -p 3306:3306 --privileged=true -v 【宿主机日志目录】:/var/log/mysql -v 【宿主机数据目录】:/var/lib/mysql -v 【宿主机配置目录】:/etc/ mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name=mysql8.0 mysql:8 --lower_case_table_names=1docker run -d -p 3306:3306 --privileged=true -v /software/mysql/log:/var/log/mysql -v /software/mysql/data:/var/lib/mysql -v /software/mysql/conf:/etc/ mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name=mysql8.0 mysql:8 --lower_case_table_names=1
SHOW VARIABLES LIKE 'lower_case_table_names';
2.新建my.cnf修改mysql配置通过容器卷映射至mysql容器实例
配置后需重启mysql8容器实例
2.1配置字符编码
[client]
default-character-set=utf8mb4
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
使用远程连接工具查看数据库字符编码同样也为utf8mb4使用远程工具连接数据库时遇见的问题解决方法可以查看以下文章第【11】节
https://blog.csdn.net/Java_Scholar0/article/details/137589263