解决Cannot load from mysql.proc.报错问题
最近更新了 mysql 版本,发现如下报错:
Cannot load from mysql.proc. The table is probably corrupted
导致一些数据库表乱码,网上查询发现是由于 mysql.proc 升级时有个字段没有升级成功。
查询mysql版本:
# mysql --version
在 mysql 5.1 版本中 mysql.proc 表的 comment 字段类型是 varchar(64),执行如下SQL语句修复:
ALTER TABLE `proc` MODIFY COLUMN `comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';
在mysql 5.5 版本中 mysql.proc 表的 comment 字段类型是 text,执行如下SQL语句修复:
ALTER TABLE `proc` MODIFY COLUMN `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `sql_mode`;
收工!