freddon
发表于2017-03-01
阅读 950 |
评论 0
我目前这种情况是由于目标mysql版本5.1升级到5.5+后,本地mysql5.6表结构跟目标表结构存在差异导致的。
### 这个错误是如何发生的?
需要将远程数据库使用Data Transfer操作备份到本地数据库或其他数据库。
![transfer](/i/o_1ba4bptjt1560100vhd9e9b1gca7.png "执行data transfer")
![corrupted](/i/o_1ba4bvlm116u9u0p1i121emt19gvc.png "mysql.proc")
### 分析
既然是提到了`mysql.proc`,应该将两个数据库的mysql库中表`proc`进行对比。
![](/i/o_1ba4c5v2712617jam9a1js31487h.png "")
远程数据库 中mysql.proc
![远程数据库](/i/o_1ba4c7hov16hl159f4fnb051bjjm.png "在这里输入图片标题")
目标数据库 中mysql.proc
![目标数据库](/i/o_1ba4c8fkrc3b4ej1tko1dcu14kpr.png "目标数据库")
现象:comment字段类型不一致。一个是char64 ,一个是text。(mysql 5.5+ 该字段类型为text)
### 解决办法
将comment字段改为text类型即可。
如果无法使用工具,可以执行命令(该命令摘自工具Navicat SQL Preview面板)即可。
```
ALTER TABLE `mysql`.`proc` CHANGE COLUMN `comment` `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT NULL;
```
分类 :日常记录
### 这个错误是如何发生的?
需要将远程数据库使用Data Transfer操作备份到本地数据库或其他数据库。
![transfer](/i/o_1ba4bptjt1560100vhd9e9b1gca7.png "执行data transfer")
![corrupted](/i/o_1ba4bvlm116u9u0p1i121emt19gvc.png "mysql.proc")
### 分析
既然是提到了`mysql.proc`,应该将两个数据库的mysql库中表`proc`进行对比。
![](/i/o_1ba4c5v2712617jam9a1js31487h.png "")
远程数据库 中mysql.proc
![远程数据库](/i/o_1ba4c7hov16hl159f4fnb051bjjm.png "在这里输入图片标题")
目标数据库 中mysql.proc
![目标数据库](/i/o_1ba4c8fkrc3b4ej1tko1dcu14kpr.png "目标数据库")
现象:comment字段类型不一致。一个是char64 ,一个是text。(mysql 5.5+ 该字段类型为text)
### 解决办法
将comment字段改为text类型即可。
如果无法使用工具,可以执行命令(该命令摘自工具Navicat SQL Preview面板)即可。
```
ALTER TABLE `mysql`.`proc` CHANGE COLUMN `comment` `comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT NULL;
```
评论(0)
先登录,才能发评论哦~