MySQL Error number: MY-011002; Symbol: ER_DD_UPGRADE_FAILED_TO_FETCH_TABLES; SQLSTATE: HY000

文档解释

Error number: MY-011002; Symbol: ER_DD_UPGRADE_FAILED_TO_FETCH_TABLES; SQLSTATE: HY000

Message: Error in fetching list of tables.

错误说明

MY-011002,是MySQL中的一个错误码,表示“升级失败,获取表失败”,该错误码位于SQLSTATE为HY000下。

出现该错误,通常是因为MySQL在执行ALTER TABLE语句时失败导致的,因此要解决这个问题,首先要检查ALTER TABLE 语句是否正确。

常见案例

例一:

最近,某一用户在MySQL数据库下运行了一个ALTER TABLE 语句,却收到了以上错误代码,这个ALTER TABLE 语句的原代码如下:

ALTER TABLE `test_db`

ADD COLUMN `column1` INTEGER AFTER `column2`

此时,后来发现这个SQL语句有一处错误——“column2”没有被正确声明,正确的语句应该是:

ALTER TABLE `test_db`

ADD COLUMN `column1` INTEGER AFTER `column3`

例二:

另一位用户在访问MySQL时,报出了如上错误码,此时用户使用的是MySQL8,但是原先的MySQL版本只有5.7,而用户在尝试升级到MySQL8时,由于某些原因,导致了升级失败,所以导致了此时报出的错误码。

解决方法

例一:

在例一中,由于SQL语句语法有误,所以经过纠正之后,重新运行ALTER TABLE 语句,就可以解决此问题。

例二:

在例二中,由于MySQL升级不成功,所以这个时候需要确认当前的MySQL版本是否正确,如果正确,可以重新尝试升级MySQL。此外,也可以重新建立MySQL数据库,另单建立MySQL8版本的数据库,并且将原先的数据库数据导入到新建的数据库中。

你可能感兴趣的