当前位置: 移动技术网 > 科技>操作系统>Linux > Docker中mysql大小写敏感配置不起作用的问题排查

Docker中mysql大小写敏感配置不起作用的问题排查

2019年02月14日  | 移动技术网科技  | 我要评论
由于linux中mysql的的表名是区分大小写的。所以需要配置my.conf。 所以在docker中需要把配置文件带进去。在宿主机的目录中新建my.conf文件,然后写入如下配置。 [mysqld]user=mysql lower_case_table_names=1 在启动docker时,把文件挂 ...

由于linux中mysql的的表名是区分大小写的。所以需要配置my.conf。

 

所以在docker中需要把配置文件带进去。在宿主机的目录中新建my.conf文件,然后写入如下配置。

[mysqld]
user=mysql
lower_case_table_names=1

 

在启动docker时,把文件挂载进去,我用的是这个命令

docker run -d -e mysql_root_password=haha123 --name mysql -v /data/mysql/data:/var/lib/mysql -v /data/mysql/usr/data:/usr/data -v /data/mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 mysql:5.6 

 

一般来讲这样启动一切应该就正常了,但是我在环境中却碰到了这个问题,mysql忽略了配置文件,导致依然大小写敏感。

 warning: world-writable config file '/etc/mysql/my.cnf' is ignored

 

然后继续百度,有人提到是mysql认为这个my.cnf文件的权限太大,任何人可编辑,太危险了,所以就忽略了这个配置文件。

原来是这样子的,为了方便ftp操作,运维把整个data文件夹都设置成了777权限,所以这个cnf文件也配置成了777权限,加载到docker里依然是777权限,这个倒是我之前没有碰到过的,知道问题原因就好解决了,改这个文件的权限就可以搞定了。

 

重启docker,终于大小写不敏感了

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网