linux 下 设置 MySQL8 表名大小写不敏感方法,解决设置后无法启动 MySQL 服务的问题

在安装完成之后,初始化数据库之前,修改 my.cnf
  1. 打开mysql配置文件

    vim /etc/my.cnf

  2. 在尾部追加一行

    lower_case_table_names=1

    并保存,然后再初始化数据库。

  3. 重启mysql,

    systemctl restart mysqld.service

如果这个操作是初始化数据库之后,也就是安装后运行过服务,那就可能会出错。

错误类似于Job for mysqld.service failed because the control process exited with error...

然后就无法启动 mysql 服务了,除非打开 vim /etc/my.cnf把追加的lower_case_table_names=1删除掉。

我在网上找了好久,暂时没找到比较好的解决方法,而 MySQL5 就没有这个问题。

最后我的解决方法如下:

如果你不在意数据的话直接删除数据

  1. 停止MySQL

    systemctl stop mysqld.service

  2. 删除 MySQL的数据 /var/lib/mysql

    rm -rf /var/lib/mysql

  3. 再按照上面的方法进行一遍操作即可。

原文地址:https://www.cnblogs.com/czwbig/p/9961069.html

时间: 2024-07-31 04:04:44

linux 下 设置 MySQL8 表名大小写不敏感方法,解决设置后无法启动 MySQL 服务的问题的相关文章

windows下mysql数据库表名大小写不敏感

最近新入职,领导让做个小功能先练练手.是一个添加分类的功能,有添加和列表,很简单.功能做完后提交,结果在线上出现一个大大的500. 但是我再本地环境下是正常的,我以为可能是php的版本不一致导致的问题,就仔细看代码,看看有没有什么不合理的地方,然后在提交,还是500.然后又看,又提,依然是500.很不解啊,只有问领导了,领导说,是线上mysql字段设置了大小写敏感,遂改之,结果还是500.领导再一看,我靠了,表名应该是首字母大写的,但是我本地是小写. 大坑啊.原来开发创建的表都是小写的,所以原来

linux mysql不区分表名大小写配置

原来Linux下的MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:1.用root登录,修改 /etc/my.cnf:2.在[mysqld]节点下,加入一行: lower_case_table_names=1(值为0时区分大小写)3.重启MySQL即可: MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的:1)数据库名与表名是严格区分大小写的:2)表的别名是严格区分大小写的:3)列名与列的别名在所有的情况下均是忽略大小写的:4)变量名也是严格区分

[转]mysql在windows下支持表名大小写,lower_case_table_names

windows下mysql默认是不支表名大小写的,也就是表名大小写不敏感.用phpmyadmin创建的驼峰式表名,全部被强制成小写.mysql表名大小写敏感的参数: lower_case_table_names. 在[mysqld]下加上lower_case_table_names=0即可. ### [mysqld] lower_case_table_names=0 ### win下默认值为1,就是说mysql会把表名主动lower. [转]mysql在windows下支持表名大小写,lower

mysql在windows下支持表名大小写,lower_case_table_names

原文:mysql在windows下支持表名大小写,lower_case_table_names windows下mysql默认是不支表名大小写的,也就是表名大小写不敏感. 用phpmyadmin创建的驼峰式表名,全部被强制成小写. mysql表名大小写敏感的参数:lower_case_table_names. Windows2012 下的C:\ProgramData\MySQL\MySQL Server 5.6\my.ini 文件 在[mysqld]下加上lower_case_table_nam

linux下mysql表名大小写问题

近日,新mysql实例导入sql数据时,发现比老的mysql多了100+张表,最终发现是mysql表名大小写所致:很简单的问题却耽误很长时间,在此记录一下,以防再犯同样的错误: 1.Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写:2.用root帐号登录后,在/etc/my.cnf中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写:lower_case_table_names参数详解:l

docker mysql 数据持久化到本地、设置不区别表名大小写

Docker MySQL 把数据存储在本地目录,很简单,只需要映射本地目录到容器即可 1.加上-v参数 $ docker run -d -e MYSQL_ROOT_PASSWORD=admin --name mysql -v /data/mysql/data:/var/lib/mysql -p 3306:3306 mysql 还可以指定配置文件 docker run -d -e MYSQL_ROOT_PASSWORD=admin --name mysql -v /data/mysql/my.cn

设置centos7中的mysql5.7不区分表名大小写有关操作

1.#which mysqld          //查看mysql的命令路径 /usr/sbin/mysqld 2.#/usr/sbin/mysqld --verbose --help | grep -A 1 'Default options'       //查看mysql读取的默认配置文件位置 /etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf (多个配置文件,前面的文件不存在才会读取后面的) 3.#vim /etc/my.cnf

MySQL--区分表名大小写

============================================================================ 在MySQL中,可以通过lower_case_table_names参数来设置是否区分表名大小写问题,参数有效取值为:0,1,2:0表示,表在文件系统存储的时候,对应的文件名是按建表时指定的大小写存的,MySQL 内部对表名的比较也是区分大小写的:1表示,表在文件系统存储的时候,对应的文件名都小写的,MySQL 内部对表名的比较是转成小写的,即

(转)小小的研究了一下linux下的”注册表“ gconf-editor

最近学习linux,刚上手gedit,首先要解决的一定是编码的问题,总结一下方法,思路有下: 一.用图形化界面设置的方法 运行gconf-editor,在弹出的对话框中选择:/apps/gedit-2/preferences/encodings/auto_detected ,双击auto_detected后添加一个编码:GB18030,保存即可. 二.用命令行,在终端输入下面命令即可: gconftool-2 --set /apps/gedit-2/preferences/encodings/a