Navicat 作为MySQL的界面管理工具以其简洁易操作赢得了DedeCMS二次开发人员的喜爱,我也是其中的一个。
最近在使用Navicat备份转移DedeCMS数据库时经常出现如图1的错误提示:
(主要涉及DedeCMS_5.6 DedeCMS_5.7 DedeCMS_5.7_SP1)
具体查看了下,主要为cn_member_person表中nature字段的set值出现了重复,我们只需要将其中冗余的一项去除即可,具体操作如图:
在我们导出转移前,修改cn_member_person(#@_为用户自定义的表前缀)表如图2
选中nature字段,在值这一项的右侧点击...浏览字段的值,找到婆婆妈妈,选中,点击“-”号,删除该冗余值。
点击保存确认修改 如图4
接着我们再进行导出,转移即可。
处理方法2:
转移前,在后台 SQL命令行工具 中运行如下SQL:
ALTER TABLE `cn_member_person`
MODIFY COLUMN `nature` set('性格外向','性格内向','活泼开朗','豪放不羁','患得患失','冲动','幽默','稳重','轻浮','沉默寡言','多愁善感','时喜时悲','附庸风雅','能说会道','坚强','脆弱','幼稚','成熟','快言快语','损人利己','狡猾善变','交际广泛','优柔寡断','自私','真诚','独立','依赖','难以琢磨','悲观消极','郁郁寡欢','胆小怕事','乐观向上','任性','自负','自卑','拜金','温柔体贴','小心翼翼','暴力倾向','逆来顺受','不拘小节','暴躁','倔强','豪爽','害羞','婆婆妈妈','敢做敢当','助人为乐','耿直','虚伪','孤僻','老实','守旧','敏感','迟钝','武断','果断','刻薄') CHARACTER SET gbk COLLATE gbk_chinese_ci NULL DEFAULT NULL AFTER `language`;
接着再使用navicat备份转移数据库即可。