目录
一、MySQL8 设置大小写敏感配置的方式
MySQL 通过 lower_case_table_names 来进行大小写敏感设置,0 为敏感,1 为不敏感,默认为 0。
根据 MySQL 官方文档,lower_case_table_names 只有在初始化时设置才有效,初始化后再更改这个参数是不起效的。
因此,可以通过以下方法设置:
1.初始化时带参数
初始化时带上如下参数:
–initialize --lower_case_table_names=1
2.初始化前,在 my.cnf 加入 lower_case_table_names 配置
vi /etc/my.cnf
在 [mysqld] 一节加入:
lower_case_table_names=1
二、已安装 MySQL8 的设置方法
1.停止 MySQL
systemctl stop mysqld
2.删除数据目录
rm -rf /var/lib/mysql
3.修改配置文件
vi /etc/my.cnf
在 [mysqld] 一节加入:
lower_case_table_names=1
4.启动 MySQL
systemctl start mysqld
三、K8s 下的设置方法
1.删除挂载的数据目录
如下,则删除 /home/data/mysql 目录的数据:
spec:
...
volumeMounts:
- name: mysql-data-volumes
mountPath: /var/lib/mysql
volumes:
- name: mysql-data-volumes
hostPath:
path: /home/data/mysql
type: Directory
2.yml 文件增加 lower_case_table_names 配置
如下:
spec:
serviceName: mysql
replicas: 1
selector:
matchLabels:
shop.service: mysql
template:
metadata:
labels:
shop.service: mysql
spec:
containers:
- args:
- --lower_case_table_names=1
或
data:
my.cnf: |
[mysqld]
lower_case_table_names=1