现象
要修改docker中的mysql配置为大小写配置
解决方案
在容器内部直接修改配置
容器内不可能没有编辑器,
可以使用 apt-get install vim
先安装编辑器
配置文件一般在 容器中的
etc/mysql/mysql.conf.d/my.cnf 文件中的mysqld
中添加
lower_case_table_names=1 1为大小写不敏感
0为大小写敏感 ,liunxh中默认敏感
之后保存退出
重启容器
docker restart xxx
通过cp文件的方式修改容器中的配置
1.进入容器
sudo docker exec -it xxx /bin/bash
2.拷贝出来
sudo docker cp xxxx:/etc/mysql/my.cnf /home/tom/
xxx–容器名 : 后是容器中的配置文件
/home/tom/ 是宿主机中你要拷贝到的地址
3.修改 同一
4.拷贝进去
sudo docker cp /home/tom/my.cnf xxxx:/etc/mysql/
5.重启mysql
docker restart xxxx
[推荐]在启动创建容器的时候添加配置命令
前两种我本地试验过,配置文件中的配置已经修改,但是启动后mysql中的配置仍然没有改变,推测是配置文件和用户权限的问题,因为我用的容器不是root的,我说的是容器的用户,所以我的使用前两种一直不生效
1.创建启动容器
docker run -p 3306:3306 --name mymysql
-v $PWD/conf:/etc/mysql/c