Cannot load from mysql.proc.The table is probably corrupted
文章目录
上次推荐了数据库管理工具 DataGrip
今天在连接线上一个数据库的时候,直接报错.
"Cannot load from mysql.proc.The table is probably corrupted"
之前在使用 Navicat 连接数据库时并没有发现此问题.
此问题产生的原因:
LINUX下将mysql从5.1升级至5.5后,存储过程不能用了.
mysql.proc升级时有个字段没有升级成功.
在5.1中mysql.proc表的comment字段是varchar(64):
但在5.5中应该是text:
comment
text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
所以我们可以通过一句 mysql 语句来更新此字段类型.
mysql -u root -p
输入 root 密码进入数据库管理控制台后, 选择 mysql 数据库.
use mysql
输入下面语句:
ALTER TABLE `proc`MODIFY COLUMN `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `sql_mode`;
执行成功后,使用 DataGrip 连接数据库再没有报此错误了.
出自:Cannot load from mysql.proc.The table is probably corrupted