lower_case_table_names 设置为0时,表名因为大小写不同而找不到。

简介: binlog恢复时,agent日志里面有下面的提示

binlog恢复时,agent日志里面有下面的提示:


Start to execute mysqlbinlog cmd: "/usr/bin/mysqlbinlog" "--stop-datetime=2020-06-12 10:00:01" "--exclude-gtids=9880af88-c491-11e8-b030-3ce8246a5f07:1-325771407,fd4bdcd9-87a8-11e9-9d4e-3ce8246a5ecf:1-2805639000" -
Restoring /data/log/4018/dblogs/bin/binlog.397357
ERROR 1146 (42S02) at line 189666: Table 'SysDB.StatusTable' doesn't exist


说这个表不存在,经查,这个表明明是存在的!

困惑呀!想了好久,怀疑是参数lower_case_table_names 的问题,检查了一下,发现这个参数设置成了0。

与大小写区分相关的参数是low_case_table_names,在UNIX中默认是0,在WINDOWS中默认是1,在macOS中默认是2,该参数只有在启动时设置才生效。对应三个值的含义:

1.low_case_table_names=0

库名和表名按照创建语句中的大小写原样存储,命名比较区分大小写。如果在不区分大小写的平台中强制设置low_case_table_names=0,当以不同大小写去使用MyISAM表时,可能会造成索引损坏;

2.low_case_table_names=1

库名和表名按照小写存放,命名比较不区分大小写;

3.low_case_table_names=2

库名和表名按照创建语句中的大小写原样存储,但在查找的时候,MySQL会将它们转换成小写,命名比较不区分大小写。

对于Innodb,应该在所有平台都设置low_case_table_names=1。

根据参数的定义,想当然的将这个参数改成了2,重新启动,发现没有生效,error log中提示这个参数被自动设置为0了。


[Warning] lower_case_table_names was set to 2,even though your the file system ‘/home/test/var/lib/data1/’ is casesensitive. Now settinglower_case_table_names to 0 to avoid future problems.

查看官方文档,里面有“On Linux, a value of 2 is not supported; the server forces the value to 0 instead.”

改成1,行了!

相关文章
|
存储 JSON 监控
APM监控 · 入门篇 · Android端测监控平台建设(1)
APM 全称 Application Performance Management & Monitoring (应用性能管理/监控) 性能问题是导致 App 用户流失的罪魁祸首之一,如果用户在使用我们 App 的时候遇到诸如页面卡顿、响应速度慢、发热严重、流量电量消耗大等问题的时候,很可能就会卸载掉我们的 App。这也是我们在目前工作中面临的巨大挑战之一,尤其是低端机型。
4389 0
APM监控 · 入门篇 · Android端测监控平台建设(1)
Servlet使用适配器模式进行增删改查案例(BaseDao.java)
Servlet使用适配器模式进行增删改查案例(BaseDao.java)
|
监控 安全 物联网
在使用物联网卡过程中的一些限制
在使用物联网卡(IoT卡)的过程中,确实存在一些限制和注意事项,这些限制主要来源于技术、安全、法规以及服务提供商的政策等多个方面。以下是一些常见的限制及操作建议:
|
敏捷开发 Devops API
核心系统转型问题之去中心化的服务集成和治理实现如何解决
核心系统转型问题之去中心化的服务集成和治理实现如何解决
|
编解码 前端开发 Java
【推荐100个unity插件之12】UGUI的粒子效果(UI粒子)—— Particle Effect For UGUI (UI Particle)
【推荐100个unity插件之12】UGUI的粒子效果(UI粒子)—— Particle Effect For UGUI (UI Particle)
2246 0
|
分布式计算 Hadoop Java
【Big Data】Hadoop--MapReduce经典题型实战(单词统计+成绩排序+文档倒插序列)
🍊本文使用了3个经典案例进行MapReduce实战🍊参考官方源码,代码风格较优雅🍊解析详细。
1324 0
|
C语言
C语言实现青蛙跳台阶问题【图解】
C语言实现青蛙跳台阶问题,两种思考方向
|
算法 机器人 程序员
ant-upload上传成功
ant-upload上传成功
196 0
|
开发工具