(一)错误出现步骤
1 用Navicat连接MySQL
2 新建一个数据库,名字随便取,比如mydb1,字符集选utf-8(因为备份文件用的就是utf-8)
3 选择mydb1数据库-->备份-->还原备份-->选择psc文件,开始还原
4 还原结束后,发现673个对象只恢复了551个,47366条记录恢复了0条。这说明这个备份文件是有问题的。
(二)解决方案
1 重新还原,在“高级”里面,取消默认勾选的“使用事务”,并勾选“遇到错误继续”
2 还原结束后,发现对象数和记录数都成功恢复
3 对mydb1数据库进行备份,这里得到的对象是665个,而原先的对象是673个。说明原先的备份文件里有8个对象是有问题的,无法恢复。至于这8个对象具体是表还是触发器或是索引,这里无从得知。
已处理记录数为47366个,与原先的记录数一致,说明整个库的记录数没有丢失。(这个可以说明假如缺失的对象为表的话,一定是空表。)
得到的备份文件名为160330103626.psc,这是根据备份的时间来命名的。备份路径为C:/Users/Administrator/Documents/Navicat/MySQL/servers/jebao/mydb1/。
4 建立一个新的数据库,名字随便取,比如mydb2,字符集仍为utf-8。然后用刚做的备份文件160330103626.psc进行数据还原。
注意“高级”选项里按默认选择就行。
5 备份结束后,发现对象数和记录数都完全恢复,说明新备份文件没有问题。