备份对于数据库而言是至关重要的。当数据文件发生损坏、MySQL服务出现错误、系统内核崩溃、计算机硬件损坏或者数据被误删等事件时,使用一种有效的数据备份方案,就可以快速解决以上所有的问题。MySQL提供了多种备份方案,包括:逻辑备份、物理备份、全备份以及增量备份,你可以选择最适合自己使用的方式备份数据。
下面章节主要描述了关于mysql逻辑备份的几种方案:
备份和冗余有什么区别?
1、必须制定详细的备份计划(备份频率、时间点、周期)
根据当前的业务情况,需要考虑备份的时间和备份数据的大小。数据量太大的话就使用冗灾。
2、备份数据应该放在非数据库本地,并建议有多份副本
3、必须做好数据恢复的演练
每隔一段时间,对备份的数据在测试环境中进行模拟恢复,保证当出现数据灾难的时候能够及时恢复数据,保证数据的可用性。备份完成后进行断电模拟演练。测试数据库是否可以正常启动,数据能否正常进行恢复。
4、根据数据应用的场合、特点选择正确的备份工具。
5、数据的一致性。
6、数据的可用性。
逻辑备份就是在不停业务的情况下进行备份。
备份的是建表、建库、插入等操作所执行SQL语句(DDL DML DCL),适用于中小型数据库,效率相对较低。
常用的工具如:mysqldump、mydumper、 into outfile(表的导出导入)等
物理备份就是在数据库彻底关闭或者不能完成正常提供服务的前提下进行的备份
直接复制数据库文件,适用于大型数据库环境,不受存储引擎的限制,但不能恢复到不同的MySQL版本。
常用的工具如:tar、cp、xtrabackup、lvm snapshot等
在线热备:AB复制(在线实时),指的是对数据的冗余