1、背景
实施:我们系统崩了,在Linux下面好多功能不能使用。
我:看看日志,有什么报错。
实施:[Err] 1146 - Unknown error 1146。
我:没有其他信息了吗?
实施:没有。
2、原因
遇到过很多次1146,但是这么简洁的情况还是第一次看到。
然后经过百度排查,最终找到原因:Linux系统区分大小写!
3、解决办法
- ROOT登录,vi /etc/my.cnf
- 在[mysqld]下加入一行:lower_case_table_names=1 //(为0时区分大小写)
- 保存退出,重启MySQL。
执行语句可查看mysql是否设置区分大小写结果为:
mysql> show variables like "%case%";
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | ON |
| lower_case_table_names | 1 |
+------------------------+-------+
2 rows in set, 1 warning (0.03 sec)