为什么备份:
-
<李>灾难恢复:硬件故障(冗余),软件故障(bug),自然灾害,* * * * * *,误操作,…李>
<李>测试:测试时,为了模仿真实环境中用户访问情况,通常需要用真实数据去做测试。李>
备份恢复的原则:
-
<李>策略正确:平时要设计好备份还原所涉及到的人员,确保能做正确的事。李>
<李>执行不出问题:平时做演练,以确保出现问题时,能做正确的事情。李>
<李>出问题时做正确的事情。李>
异地灾备
-
<李>必要性:防止同一台机器,同一个网络环境中,同一个物理机房不可用导致服务不可用。李>
<李>备份项:配置文件,周边配置,周期性计划任务。李>
备份注意事项:
-
<李>能容忍最多丢失多少数据:决定了使用的备份手段和工具李>
<李>恢复数据需要在多长时间内完成
-
<李>电商站点若发生故障,数据恢复时,一小时损失可能数以亿计数据。若用二进制文件恢复,可能恢复时长极长,且可能因业务量大,单条语句写入二进制文件顺序不同导致数据与真实数据不一致。李>
李
-
<李>线上生产数据集,线上认证,配置等李>
李
数据备份的类型
-
<李>
根据备份的数据集的范围可分为完全备份和部分备份
-
<李>完全备份:备份整个数据集李>
<李>部分备份:备份整个数据集中的一部分,如部分表。李>
全量备份,增量备份,差异备份
-
<李>全量备份:备份全部数据李>
<李>增量备份:备份自上一次完全备份或增量备份以来变化的那部分数据李>
<李>差异备份:仅备份自上一次完全备份以来变化的那部数据李>
根据备份方式分为物理备份和逻辑备份
-
<李>物理备份:直接复制数据文件李>
<李>逻辑备份:从数据库导出数据另存在一个或多个文件中李>
-
<李>热备:读写操作均可进行的状态下所做的备份李>
<李>温备:可读但不可写状态下进行的备份;李>
<李>冷备:读写操作均不可进行的状态下所做的备份;最可靠,但却是最不可行的。可借助主从复制实现。李>
李
备份时需要考虑到的因素:
-
<李>要不要锁定资源,锁定资源多长时间?李>
<李>备份过程的时长?李>
<李>备份时的服务器负载?李>
<李>恢复过程的时长?李>
备份工具
-
<李>
, mysqldump
-
<李> mysql服务自带的备份工具,逻辑备份工具。李>
<李>可以做到完全,部分备份李>
<李>对InnoDB支持热备,对MyISAM存储引擎支持温备。李>
cp/焦油
-
<李> lvm2:快照(请求一个全局锁),之后立即释放锁,达到几乎热备的效果;物理备份;
-
<李>注意:不能仅备份数据文件,要同时备份事务日志;李>
<李>前提:要求数据文件和事务日志位于同一个逻辑卷;李>
李
Innobackup/xtrabackup
-
<李>由Percona提供,开源工具,支持对InnoDB做热备,物理备份工具,李>
<李>支持完全备份,部分备份;完全备份,增量备份;完全备份,差异备份;李>
-
<李>备份:选择》到输出文件的文件名,李>
<李>恢复:创建表李>
<李>导入:加载数据李>
李
, mysqldump用法
-
<李>
特点:支持逻辑备份,完全备份,部分备份;
-
<李>逻辑备份:数据服务要正常运行,监听在某个端口,mysqldump可以通过端口访问mysql。李>
<李>通过选择语句查询后导出至一个文件,恢复时通过插入语句把所有查询结果插入至数据库。李>
<李>有可能会丢失精度