云数据库 Mysql5.7出现1146错误的解决方案

文章讲述了作者在从Mysql5.7升级到8.0时遇到的问题,涉及到驼峰命名的表在lower_case_table_names=1的配置下无法识别。通过修改云数据库的配置将lower_case_table_names设为0,解决了删除数据库及表的问题,最后顺利完成了升级过程。
摘要由CSDN通过智能技术生成

在一次Mysql5.7升级8.0时,出现了升级异常,有一部分表不存在,所以无法升级

然后我们就去查了Mysql5.7的数据库,发现有一个DB中,都是驼峰命名的表,在查看这些表时,就会出现【1146:xxxx doesn‘t exist】错误

网上翻阅的很多资料,大部分都说是因为Mysql的lower_case_table_names=1(小写存储),无法识别有大写命名的表,需要修改Mysql的配置文件的lower_case_table_names为0,才可以操作这些表

然后我们就想,这些表查看出错,那删了,是不是就万事大吉了

然后发现,删表也出现【1146:xxxx doesn‘t exist】错误,删数据库也不行,无语,投机失败

看来只能修改lower_case_table_names了

修改本地配置文件,云数据库,属实不会操作

找了一圈后,发现在云数据库的参数配置中,可以修改Mysql5.7的参数

修改lower_case_table_names为0,重启Mysql5.7

这个时候,虽然还是不能操作表,但是。。。。。。。。。。。发现,数据库可以删除了,数据库一删,所有驼峰表全部删光,皆大欢喜

然后把lower_case_table_names改为1,再重启数据库

所有操作不受影响

继续升级Mysql8.0

哎,都是泪啊,也不知道谁把驼峰的表,存到了lower_case_table_names为1的数据库里

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值