MySQL之使用Navicat复制数据库的骚操作

458 阅读2分钟

本文已参加「新人创作礼」活动,一起开启掘金创作之路。

背景

今天上午,在使用Navicat对开发环境的数据库进行同步操作的时候,不小心把其它的表都删了。还好是开发环境,否则我可以直接卷铺盖走人了。不过开发环境也有人用呀,表没了直接影响大家的使用,于是我就打算用Navicat把测试环境的数据库复制一份过来。

经过

然而研究了一上午,数据传输、数据同步、结构同步、SQL文件都试过了,结果都不满意。真的是各种报错,各种卡壳。关键是这种报错我还不知道为啥,更不知道怎么解决。没办法,内事不决问百度,外事不决问Google。在网上搜索Navicat MySQL 数据库复制,大神们告诉我用备份还原。但是备份还原有个问题,比如说我备份的是test库,那么test库的备份当然只能在test库还原。怎么把test库的备份变成dev库的备份呢?

大神们又说了,提取SQL。这当然不失为一种办法,但我天生奇懒,还是觉得麻烦。吃完午饭,我盯着Navicat里的备份文件出了会儿神,突然灵机一动,这玩意儿既然是个文件,能不能复制呢?如果可以的话,那我直接拖过去不就完了。然后我就试着拖了一下:

image.png

test库的备份就这样变成了dev库的备份。接下来就是还原了,非常顺利,成功的挽回了我的脸面(虽然只有一点点)。

总结

通过对各种数据库复制方式的使用体验,感觉备份还原是最靠谱的,靠谱就靠谱在不会出现错误,而且速度也很快。你也不想等了半天,卡给你报了个错,前功尽弃不说,还不知道为啥吧。有兴趣的小伙伴可以尝试一下。