qidao123.com技术社区-IT企服评测·应用市场
标题:
金仓数据库永世增量备份技能原理与操纵
[打印本页]
作者:
罪恶克星
时间:
6 天前
标题:
金仓数据库永世增量备份技能原理与操纵
先用一张图阐明一下常见的备份方式
为什么需要永世增量备份
传统的数据库备份方案通常是间隔7天对数据库做一次全量备份(完备备份),每天会基于全量备份做一次增量备份,如此循环,这种备份方案在全备数据量过大场景下可能碰到如下标题:
每周的全量备份像一场“资源风暴”——磁盘I/O打满、业务响应延迟飙升,备份耗时长…
直到碰到
永世增量备份
,我才发现,原来备份可以如此“优雅”。今天,就带大家深入它的技能内核,看看它是怎样用“一次全量+智能归并”颠覆传统逻辑的。
一、永世增量备份技能解剖
焦点逻辑
:
“用计算换存储,用归并替全量”
初始全量(Day 1)
像给数据库拍一张“全景照片”,纪录所有数据的初始状态。
每日增量(Day 2~7)
只纪录
变化的数据或数据块
,类似Git的差异提交。 金仓数据库支持文件级别的增量备份和块级别的增量备份
举例:若一个1TB的数据库每天仅1%数据变化,增量文件只需约10GB。
智能归并(Day 8)
最出色的魔法
:将Day 1的全量 + Day 2~7的增量
归并为新的全量备份
。
归并过程剖析
(伪代码逻辑):
def 合并全量(old_full, increments):
new_full = old_full.copy()
for inc in increments:
new_full.apply_diff(inc) # 将增量差异应用到旧全量
validate(new_full) # 校验数据一致性
return new_full
复制代码
这里补充阐明一下为什么需要做归并而不是持续只做增量备份,焦点原因是增量备份越多,数据恢复的迭代恢复过程耗时会很长。
优势总结
:
新全量直接代表最新数据状态,后续增量只需基于它继承。
旧备份链按需自动清理,清理后存储空间线性增长而非指数爆炸。
无需对数据库举行全量备份,数据库资源消耗降落,业务影响大大降低 。
二、金仓数据库怎样开启永世增量备份
以金仓数据库KINGBASE (KingbaseES) V009R001C002B0014为例:
在备份初始化时,可以选择是否开启永世增量备份
控制参数:修改安装路径/Server/share/sys_backup.conf配置文件中的如下参数
_continue_incr:是否启用永世增量备份功能,默认n,配置为y则代表开启永世增量备份功能。
开启之后,定时任务中的全量备份动作,将变更为一次增量备份+归并备份集
# Continue Incr-Backup
# y means Incr-Backup will merge current backup-set and it's reference into one new FULL backup-set
# merge into FULL applied in crontab-job by _crond_full_days
# normal Incr-Backup applied in crontab-job by _crond_incr_days
# n means no merge
_continue_incr=n
复制代码
其他配置和操纵同平凡备份配置一致
手动备份下令示例:
# 合并备份集,但是不移除旧的备份集
/home/kingbase/cluster/project/cluster/kingbase/bin/sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --type=incr --merge_action=merge-no-delete backup
# 合并备份集,并且移除旧的备份集
/home/kingbase/cluster/project/cluster/kingbase/bin/sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --type=incr --merge_action=merge-and-delete backup
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/)
Powered by Discuz! X3.4