1. 程式人生 > 其它 >Docker容器下的Mysql,設定表名忽略大小寫

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%';