备份MySQL需要知道的十件事
1. 备份要求停止数据库吗?如果不需要,那么备份的时候会影响什么?块设备?I/O负载?缓冲?或者是其他?
2. 备份用的是什么技术?是mysqldump还是与此类似的定制化产品?属于文件系统拷贝模式吗?
3. 备份系统能理解不能通过简单的拷贝文件来备份InnoDB类型的数据吗?
4. 备份使用了FLUSH TABLES, LOCK TABLES, 或者FLUSH TABLES WITH READ LOCK等SQL语句吗?所有这些语句都会中断MySQL进程。
5. MySQL还有哪些其他功用?我曾见过某个备份系统使用了RESET MASTER语句,结果它立马就把复制(replication)给中断了, 还有其他FLUSH 语句吗?比如FLUSH LOGS?
6. 备份系统能确保可以执行时间点(point-in-time)恢复吗?
7. 备份系统能确保binary log,InnoDB logs和复制数据保持一致性吗?
8. 你可以使用这个备份系统来设置一个新的复制slave端吗?如何做到?
9. 备份系统校验备份数据是否可恢复?比如它在生成备份成功之前是否运行过InnoDB恢复操作?
10. 它提供支持,确保可运行,可恢复备份吗?从法律意义上来讲它的担保能在什么程度?
当然,还需要提供更多其他与备份相关的一些细节,但是我个人认为,就针对MySQL而言,这些是比较重要的。
接下来呢?是的,我遇到过很多商家销售他们他们含有各种MySQL备份agent的备份产品,然而,我很难从其获得比较详细的技术细节,比如他们的备份 是如何实现的,我甚至连最基本的信息,诸如“dump或者文件拷贝”都获取不到。有时,他们会告诉我去官方站点注册然后下载所谓的白皮书,可是白皮书上仅 仅只是写着“支持MySQL数据”或者是“我们已经将你转接到地区销售人员”,然而我却总是找不到此人。
他们中的一些人甚至使用“专 利”这个词来搪塞我,似乎认为这是一个不错的主意。实际上,一个专有的,保密的黑盒备份方案是不可接受的。MySQL备份是复杂的,想正确使用备份也比较 难。除非我非常清楚这个备份产品是如何工作的,否则,我根本就不敢告诉客户这个东西是否可用。
因此,我提供上面这个列表的目的就是用来评估你将要使用的备份产品是否能到达了企业级备份要求。如果你不能回答上面的问题,依我看来,这个备份系统就不用评估了。
关键字:MySQL、数据库、备份
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解