今天在CentOS6.4中对MySQL从5.1升级到5.6的版本之后,在使用Navicat Premium客户端管理工具的时候,发现写sql语句的智能提示没有了,这里绝对不是管理工具的配置问题,我测试了在另外一台MySQL5.5的机器上是没有这个问题。
没有提示也就算了,当我把表建好之后,想保存备份一下表结构时,提示如下错误:
Cannot load from mysql.proc. The table is probably corrupted
截图如下:
MySQL导出数据库结构出现Cannot load from mysql.proc错误的解决方法
在网上搜了下解决方法,所有的文章几乎都是这么说:
执行以下命令:
mysql_upgrade -u root -p 密码
接着修改
找到并修改my.cnf文件。在不同的Linux系统下,my.cnf放在不同的位置。这里以Ubuntu Server做示例,其他系统请根据情况自行找到my.cnf的路径。一般只会存放在/etc/my.cnf或者/etc/mysql/my.cnf下。
首先用vim打开my.cnf:
复制代码代码如下:
vim /etc/mysql/my.cnf
看看是否有绑定本地回环地址的配置,如果有,注释掉下面这段文字:(在文字之前加上#号即可)
复制代码代码如下:
bind-address = 127.0.0.1
然后找到[mysqld]部分的参数,在配置后面建立一个新行,添加下面这个参数:
skip-name-resolve
保存文件并重启MySQL:
复制代码代码如下:
/etc/init.d/mysql restart
这样就会发现,问题已经解决了!远程连接不会丢失了。
我试了无数次,在我这里无效,问题还是没有得到解决,因为不影响工作,所以问题就暂时放下了没有去处理。
当我闲下来,无聊的时候,又在搜索这个问题的解决方法,功夫不负有心人啊,让我找到了这篇文章:http://www.linuxidc.com/Linux/2013-12/93864.htm
也就是从mysql5.5的版本开始,proc这张表中的comment字段的列属性已经由char(64)改为text类型,我们需要更改一下数据类型:
ALTER TABLE `proc`
MODIFY COLUMN `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `sql_mode`;
此SQL语句用在本地数据库,最后问题得到了解决。
原文链接:https://www.linuxidc.com/Linux/2013-12/93863.htm
参照链接:https://www.linuxidc.com/Linux/2013-12/93864.htm