docker上修改mysql大小写_docker环境下修改mysql中的配置文件

lower_case_table_names

发现新建的数据库中数据库表不能支持大小写。但是库都导好了。也不能说去重新删了重启启动一个Mysql docker Container。所以还是修改mysql文件吧

首先我们要知道怎去解决lower_case_table_names

参数含义:

lower_case_table_names: 此参数不可以动态修改,必须重启数据库

lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写

lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的

lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的

show variables like 'lower_case_table_names';

发现现在是0.得修改配置文件吧

修改配置文件

1、首先进入docker的mysql容器中

[root@linksys /]# docker exec -it mysql01 bash

2、进入配置文件

root@cc80cd737dfe:/# cd /etc/mysql/mysql.conf.d

root@cc80cd737dfe:/etc/mysql/mysql.conf.d# ls

mysqld.cnf

3、vim这个配置文件。敲vim命令时提示说:vim: command not found

Docker安装Vim

这个时候就需要安装vim,可是当你敲apt-get install vim命令时,提示:

Reading package lists... Done

Building dependency tree

Reading state information... Done

E: Unable to locate package vim

这时候需要敲:apt-get update,这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。

等更新完毕以后再敲命令:apt-get install vim命令即可。

4、vim安装完成。

vim /etc/mysql/mysql.conf.d/mysqld.cnf

5、写入lower_case_table_names = 1

6、重启docker中的mysql容器

docker restart c088(容器的id)

ps:结果发现。容器失败了。。。omg

查看了一下docker的log

docker logsc088(容器的id)

补救措施

好吧。。这个lower_case_table_names = 1写成了lower_case_table_name = 1,这下可好。容器起不来了。

于是直接在linux里搜索一下有没有相关的配置文件

[root@linksys /]# find / -name mysqld.cnf |grep 'etc/mysql/mysql.conf.d/mysqld.cnf'

/var/lib/docker/overlay2/a4c07910600758862e9e39ae0f2ed7015e2e31419bfff88a929b4095174a7a50/diff/etc/mysql/mysql.conf.d/mysqld.cnf

/var/lib/docker/overlay2/67d84bf28029c6afbd682f2e9da22c5ea7c6d9218d3ab4929fe1d0272a4ce948/diff/etc/mysql/mysql.conf.d/mysqld.cnf

找到几个。然后进入相对应的mysqld.cnf修改好后。再次重新启动mysql容器。发现ok了。

好吧。开始工作了~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值