Docker容器下的Mysql,设置表名忽略大小写
在阿里的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 大小写不敏感
默认注册启动后是表名是大小写敏感的,折腾了很久,解决表名大小写不敏感的步骤应该是正常启动容器后停止,修改/etc/mysql/conf.d的配置文件,
[mysql] lower_case_table_names=1
然后把/usr/local/docker/mysql/data整个删除,启动这个容器就可以忽略大小写了
验证:show global variables like '%lower_case%';