简介
概述
数据备份是保护数据安全的重要手段之一,为了更好的保护数据安全,GaussDB 200提供对系统内管理数据和用户数据的备份恢复能力。
备份任务的使用场景如下:
- 自动定时备份任务:用于数据日常备份,确保当系统及组件的数据因系统故障不可用时,能够及时快速地恢复。
- 手动临时备份任务:重大操作之前对数据进行备份,确保当重大操作失败后,能够及时将数据恢复到操作前的状态。
GaussDB 200按组件提供备份功能,支持备份管理系统Manager的数据(需要同时备份OMS和LdapServer)和MPPDB用户数据。
数据类型 |
业务名称 |
备份内容 |
|---|---|---|
管理数据 |
OMS |
默认备份集群管理系统中的数据库数据(不包含告警数据)以及配置数据。 |
LdapServer |
备份用户信息,包括用户名、密码、密钥、密码策略、组信息。 |
|
用户数据 |
MPPDB |
提供集群级别、表级别的全量备份,和集群级别的增量备份。 |
其中,用户数据支持集群级全量备份和增量备份,表级全量备份;备份介质可以是本地磁盘或远程NBU服务器。不同的场景下应该选择不同的备份对象、备份策略和备份介质,建议按照表2所示的内容选择。
备份对象 |
备份策略 |
备份介质 |
适用场景 |
建议策略 |
|---|---|---|---|---|
集群 |
全量备份 |
|
集群全量备份适用于大型集群(集群级全量备份的数据量最大能达到PB级,对象达100万个)的例行数据备份,和用于审计的归档备份。 |
|
集群 |
增量备份 |
|
集群增量备份适用于大型集群的例行数据备份。 需要注意的是,增量备份的次数不宜过多,否则数据恢复时需要恢复的增量备份次数太多,将导致系统性能下降。 |
|
表 |
全量备份 |
|
表备份适用于较为重要的表数据例行备份,以确保在突发故障时能快速恢复数据,降低损失。 |
|
- 如果备份到DISK(本地磁盘),则用户选择该路径时,需要提前规划好该路径所在分区的剩余磁盘空间,保证后续每次生成的备份集都有足够空间存储。每次备份会在该路径下生成一个备份集,存放本节点各个数据实例的压缩文件(后缀为“.rch”)。以集群全量备份为例,假设压缩率为1:1,生成的备份集大小约等于该节点所有CN和主DN实例所占磁盘空间大小。
- 备DN的数据不会备份,其它实例数据较少可以忽略。如果本地没有一个足够大的分区来存放备份集,则建议考虑将备份集存储到远端NAS服务器,每个节点映射一个本地分区作为备份集存放路径。
备份机制
集群级备份
- 全量备份:通过物理文件拷贝的方式,以磁盘块为基本单位将集群数据从主机复制到备机,对数据库进行备份,备份效率高,在全量备份场景下实现低成本、快速备份。
- 增量备份:增量集群备份在全量集群备份的基础上,对用户数据做的修改进行精准备份,可有效的降低系统中备份数据的冗余度,提升数据库性能,但备份效率较低。
表级备份
表级备份仅支持全量备份,它将备份时刻的元数据和业务数据通过导出为外表的方式写入存储文件,转储到备份路径下。由于备份效率较低,适用于备份变化量较小的数据对象,如,单个表或多个表。
备份数据默认采用基于业界开源压缩软件zlib的压缩功能进行压缩。
恢复机制
备份成功后,一旦系统出现故障需要恢复数据,下发恢复任务后系统会按照如下步骤处理:
- 集群级恢复时,停止集群,并清空集群数据。
- 开始还原数据。
- 集群级恢复:直接将磁盘块中复制的数据拷贝回集群中。
- 表级恢复:从导出的外表文件中以sql方式导入数据库中。
- 集群级恢复时,启动集群。
无论是集群备份或表备份,全量备份或增量备份,都只能对备份时刻的数据状态进行备份,所以恢复时也只能恢复到备份时保存的数据,对于故障点和备份点之间的数据,系统无能为力。
对系统的影响
- 备份过程中,会占用一定的内存资源和较高的CPU、磁盘IO资源,从而影响数据库的使用性能。
- 集群备份期间,会锁定集群,用户将无法执行DDL语句。
- 集群恢复期间,会停止集群,导致用户无法访问数据库。
- 恢复失败后,可能导致集群无法启动,从而无法提供数据库服务。
备份任务
在进行备份恢复之前,需要先创建备份恢复任务,并指定任务的参数,例如任务名称、备份数据源和备份文件保存的目录类型等等。通过执行备份恢复任务,用户可完成数据的备份恢复需求。
每个备份任务可同时备份不同的数据源,每个数据源将生成独立的备份文件,每次备份的所有备份文件组成一个备份文件集,可用于恢复任务。备份任务支持将备份文件保存在Linux本地磁盘或远端NBU服务器。备份任务提供全量备份或增量备份的策略,OMS、LdapServer备份任务默认只应用全量备份策略。
任务运行规则:
- 某个任务已经处于执行状态,则当前任务无法重复执行。由于同时可运行的任务数量为1,所以某个任务处于执行状态时,其他任务也无法启动。
- 周期任务自动执行时,距离该任务上次执行的时间间隔需要在120秒以上,否则任务推迟到下个周期启动。手动启动任务无时间间隔限制。
- 周期任务自动执行时,当前时间不得晚于任务开始时间120秒以上,否则任务推迟到下个周期启动。
- 周期任务锁定时无法自动执行,需要手动解锁。
- 管理员在规划备份恢复任务时,请严格根据业务逻辑、数据存储结构、数据库或表关联关系,选择需要备份或者恢复的数据。系统默认创建了一个间隔为1小时的周期备份任务“default”,支持全量备份OMS、LdapServer数据到Linux本地磁盘。
规格
项目 |
参数 |
|---|---|
备份或恢复任务最大数量(个) |
1000 |
同时运行的任务数量(个) |
1 |
等待运行的任务最大数量(个) |
199 |
Linux本地磁盘最大备份文件大小(GB) |
600 |
项目 |
OMS |
LdapServer |
|---|---|---|
备份周期 |
1小时 |
|
最大备份数 |
168个(7天历史数据) |
|
单个备份文件最大大小 |
10MB |
20MB |
最大占用磁盘大小 |
1.64GB |
3.28GB |
备份数据保存位置 |
主备管理节点“数据存放路径/LocalBackup/” |
- “default”任务保存的备份数据,请管理员根据企业运维要求,定期转移并保存到集群外部。
- 管理员可创建DistCp备份任务将OMS、LdapServer的数据保存到外部集群。
查看更多:华为GaussDB 200 备份恢复




