Linux MySQL改为不区分大小写,lower_case_table_names=1 启动报错 mysql8.0

我们知道在 Linux 环境下默认是区分大小写的,所以我们需要改变这种默认方式,经过网上各种搜索后,基本就是清一色的修改 lower_case_table_names,然后信誓旦旦的去修改了,但是修改后发现 mysql 直接启动不了,怎么回事呢?

Job for mysqld.service failed because the control process exited with
error code. See “systemctl status mysqld.service” and “journalctl -xe”
for details.

原因:

mysql8.0 要求我们不能在initialize之后再更改 lower_case_table_names 的值,也就是说,再通过更改 my.cnf 文件是不管用的。另外,mysql8.0的状态只能为不区分大小写或区分大小写,一种情况

所以在初始化时设置 lower-case-table-names=1

mysqld --initialize-insecure --user mysql --datadir=/opt/data --lower-case-table-names=1

vi my.cnf 新添加

lower_case_table_names=1
重启
systemctl restart mysqld

Logo

更多推荐