数据库的备份方式说简单也简单,说复杂也挺绕。MyISAM 表的备份就省事,直接整个数据库目录拷出来就行,速度快,操作也直观。但一旦你用了InnoDB,事情就没那么轻松了。你得连带着备份ibdata1
还有ib_logfile0
、ib_logfile1
这几个文件,少了哪个都不行,恢复的时候分分钟翻车。
大多数人第一次踩坑,基本都是忘了备日志文件,恢复时数据不完整,心态直接爆炸。嗯,如果你想更稳一点,建议用mysqldump搭配定时任务,兼容性更好,容错率也高一些。
如果你还不太清楚MyISAM和InnoDB的区别,推荐几个参考链接给你:MyISAM 和 InnoDB 的比较 和 选择正确的数据库引擎 这两个讲得比较清楚。
平时备份也别偷懒,哪怕是开发环境,也最好养成自动备份的习惯。你可以把整个数据库目录、ibdata1
、ib_logfile0
、ib_logfile1
一起打包,保存在.tar.gz
里,操作起来其实也挺快的。
哦对了,如果你用的是 InnoDB 插件版,注意看下这篇MySQL 的 InnoDB 插件,有些版本兼容性不是好,坑还是蛮多的。