在阿里的ECS上使用Docker安装mysql,默认拉取的版本是最新版本的,通过挂载配置和数据的方式运行容器,

docker run -p 3306:3306 --name mysql-ci \
-v /usr/local/docker/mysql/conf.d:/etc/mysql/conf.d \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=*** \
-d mysql

 

在工具的查询,

show global variables like '%lower_case%';
select version();

 #lower_case_table_names=0 大小写敏感

#lower_case_table_names=1 大小写不敏感

Docker容器下的Mysql,设置表名忽略大小写_大小写不敏感

 

 

 默认注册启动后是表名是大小写敏感的,折腾了很久,解决表名大小写不敏感的步骤应该是正常启动容器后停止,修改/etc/mysql/conf.d的配置文件,

[mysql]
lower_case_table_names=1

 然后把/usr/local/docker/mysql/data整个删除,启动这个容器就可以忽略大小写了

验证:show global variables like '%lower_case%';
Docker容器下的Mysql,设置表名忽略大小写_docker_02