我刚刚将MySQL从5.0升级到5.7。每次执行SHOW CREATE PROCEDURE
查询时,都会出现此错误。
[Err] 1457 - Failed to load routine db.ClosePeriod. The table mysql.proc is missing, corrupt, or contains bad data (internal code -6)
我在mysql.proc中选择了ClosePeriod程序,数据存在。我尝试修复它,该表没有损坏或崩溃。
对我来说有什么解决方案吗?
答案 0 :(得分:0)
升级MySQL软件后,您应该运行mysql_upgrade
。
有时软件的新版本依赖于在系统架构中创建的新表。 mysql_upgrade工具确保创建这些新表。
自从你从5.0跳到5.7后,你及时跳了大约10年的时间'值得的软件版本。 :-)当时系统表肯定有变化。
有关详细信息,请阅读: