Cannot load from mysql.proc. The table is probably corrupted

1;2为网上参考的办法,未生效。3生效
1.更改proc这张表中的comment字段的列属性已经由char(64)改为text类型。
ALTER TABLE `proc`
MODIFY COLUMN `comment`  text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `sql_mode`;
但是设计表后,发现字段属性已经是text
2.mysql_upgrade -u root -p -s(只升级系统库) 执行后卡住,如截图,虽然显示mysql.proc ok ,但再次执行更新sql仍然报错。
3.查看mysql-error.log,发现报错
Incorrect definition of table mysql.proc: expected column 'sql_mode' at position 14 to have type set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVA
翻译后时:表mysql.proc的定义不正确:位置14处应为列“sql_mode”设置类型
所以去查看mysql.proc表,发现表为空,查询其它学校数据库的mysql.proc是有数据的,导出这些数据,如insert.txt中内容,然后在当前出错的库执行下insert
再次执行更新sql,无报错,修复完成。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值