MySQL查询报错:ERROR 1146 (42S02): Table 'craw.sitePageConfig' doesn't exist
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,今天一同事咨询mysql的问题,在mysql主库访问某个表报错, 但是备库上可以,感觉有点奇怪。即使不同步,也不能说主库不能访问啊。既然是主备,就从主备同步开始查。各种show master stat
千家信息网最后更新 2026年11月01日MySQL查询报错:ERROR 1146 (42S02): Table 'craw.sitePageConfig' doesn't exist今天一同事咨询mysql的问题,在mysql主库访问某个表报错, 但是备库上可以,感觉有点奇怪。即使不同步,
也不能说主库不能访问啊。
既然是主备,就从主备同步开始查。各种show master status\G, show binary logs , 在备库上show slave status\G,
在备库上看到:
Salve_IO_Runing : NO
Salve_SQL_Runing : YES
显然已经不同步了,看到Relay_Master_Log_File是 mysql-bin.000064, 但是在主库上show binary logs查看的是:67,68,69,
已没有了 64,65,66 。
在备库上也看到了Last_IO_Error的报错很明显,1236严重错误,Could not find first log file name in binary log index file.
不同步确认了,那么为啥主库的表也不能访问呢。权限确认了,没有问题。遇到的最多的应该就是大小写问题了,这个也是mysql
做的比较差的地方。 在主库查询全部是小写的表,没有报错,查询大小写混合的表,都报错,提示一样 :
ERROR 1146 (42S02): Table 'craw.sitePageConfig' doesn't exist
查询my.cnf下的lower_case_table_names参数,发现果然,参数是1,默认是0来的,查看my.cnf文件修改日期,是2天前,而备
库上的my.cnf是半年前的。大致找到原因后,如何进行解决呢 ? 改回来 ?
改回来(改为0)其实应该是OK的。待验证。其实在Linux/Unix下会碰到这种错误,在windows下不会。 为什么呢。因为MySQL中
数据库相当于数据目录下的目录,表相当于目录下的文件,而Linux/Unix系统是区分大小写的(windows不区分),创建了大小写混合
的库或表后,我们在修改参数lower_case_table_names=1 ,这时MySQL将所有SQL中的表名都翻译为了小写(为了大小写不敏感),
但是Linux下没有全部是小写的这个文件或目录(表或库)。 就出现了找不到的情况。
如果你是windows平台下开发的,完了之后放到Linux上,很可能会碰到这个错误。必须去掉大小写敏感。
也不能说主库不能访问啊。
既然是主备,就从主备同步开始查。各种show master status\G, show binary logs , 在备库上show slave status\G,
在备库上看到:
Salve_IO_Runing : NO
Salve_SQL_Runing : YES
显然已经不同步了,看到Relay_Master_Log_File是 mysql-bin.000064, 但是在主库上show binary logs查看的是:67,68,69,
已没有了 64,65,66 。
在备库上也看到了Last_IO_Error的报错很明显,1236严重错误,Could not find first log file name in binary log index file.
不同步确认了,那么为啥主库的表也不能访问呢。权限确认了,没有问题。遇到的最多的应该就是大小写问题了,这个也是mysql
做的比较差的地方。 在主库查询全部是小写的表,没有报错,查询大小写混合的表,都报错,提示一样 :
ERROR 1146 (42S02): Table 'craw.sitePageConfig' doesn't exist
查询my.cnf下的lower_case_table_names参数,发现果然,参数是1,默认是0来的,查看my.cnf文件修改日期,是2天前,而备
库上的my.cnf是半年前的。大致找到原因后,如何进行解决呢 ? 改回来 ?
改回来(改为0)其实应该是OK的。待验证。其实在Linux/Unix下会碰到这种错误,在windows下不会。 为什么呢。因为MySQL中
数据库相当于数据目录下的目录,表相当于目录下的文件,而Linux/Unix系统是区分大小写的(windows不区分),创建了大小写混合
的库或表后,我们在修改参数lower_case_table_names=1 ,这时MySQL将所有SQL中的表名都翻译为了小写(为了大小写不敏感),
但是Linux下没有全部是小写的这个文件或目录(表或库)。 就出现了找不到的情况。
如果你是windows平台下开发的,完了之后放到Linux上,很可能会碰到这个错误。必须去掉大小写敏感。
大小
目录
同步
查询
参数
小写
文件
错误
问题
数据
混合
明显
半年
原因
同事
名都
地方
完了
就是
平台
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
重生之互联网科技帝国
互联网科技公司税收优惠
美国互联网科技
青岛互联网科技公司
互联网科技公司怎么样
互联网科技公司电话
广州宏创互联网科技
国外互联网科技网站
四个字互联网科技公司取名
科技互联网的估值
互联网科技教育视频
互联网和黑科技的看法
青海科技产业互联网发展
互联网科技如何创业
伊宁互联网科技做什么的
区块链结合互联网科技
深圳互联网科技的发展
互联网科技资金流入
陕西云淼互联网科技公司
武汉亿视互联网科技有限公司
互联网科技
互联网 科技创业
银川新华互联网科技职业技术培训学校图片
移动互联网科技股
互联网和黑科技的看法
崇明区互联网教育科技售后服务
世界互联网领先科技成果获奖
银行科技岗属于互联网吗
广州梦谷互联网科技有限公司领导
中国主要互联网科技公司