今天运行公司项目时,发现由于数据库区分表名大小写,报错运行不起来。通多放查询——原来docker 部署时默认时区分大小写的!
于是我就通过百度多方查询修改不区分大小写的方法。很多都是通过挂载配置文件修改,还有的进入容器内部进行修改配置文件,在配置文件内写入lower_case_table_names=1,这些方法都不行(不知道是不是个人原因——如果说我没找到正确的配置文件挂载,但是我进入容器内把所有的配置文件都试了下都不行。)
最后找到在创建容器时配置,才能设置成功。
docker run -id --name mysql2 \
-v /mydata/mysql2/log/:/var/log \
-v /mydata/mysql2/data/:/var/lib/mysql \
-v /mydata/mysql2/conf.d/:/etc/mysql/conf.d \
-p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 --lower_case_table_names=1
然后通过 show global variables like '%lower%';查看
发现是1,如果默认的话,它是0的。
哪位大佬知道为什么修改配置文件不成功,欢迎评论告知下!感谢。或者说你通过修改挂载的文件配置成功!告诉下方法,在此感谢了