概述

数据备份是保护数据安全的重要手段之一,为了更好的保护数据安全,openGauss数据库支持两种备份恢复类型、多种备份恢复方案,备份和恢复过程中提供数据的可靠性保障机制。

备份与恢复类型可分为逻辑备份与恢复、物理备份与恢复。

  • 逻辑备份与恢复:通过逻辑导出对数据进行备份,逻辑备份只能基于备份时刻进行数据转储,所以恢复时也只能恢复到备份时保存的数据。对于故障点和备份点之间的数据,逻辑备份无能为力,逻辑备份适合备份那些很少变化的数据,当这些数据因误操作被损坏时,可以通过逻辑备份进行快速恢复。如果通过逻辑备份进行全库恢复,通常需要重建数据库,导入备份数据来完成,对于可用性要求很高的数据库,这种恢复时间太长,通常不被采用。由于逻辑备份具有平台无关性,所以更为常见的是,逻辑备份被作为一个数据迁移及移动的主要手段。
  • 物理备份与恢复:通过物理文件拷贝的方式对数据库进行备份,以磁盘块为基本单位将数据从主机复制到备机。通过备份的数据文件及归档日志等文件,数据库可以进行完全恢复。物理备份速度快,一般被用作对数据进行备份和恢复,用于全量备份的场景。通过合理规划,可以低成本进行备份与恢复。

    以下为openGauss支持的两类数据备份恢复方案,备份方案也决定了当异常发生时该如何恢复。

    表 1 两种备份恢复类型对比

    备份类型

    应用场景

    支持的介质

    优缺点

    逻辑备份与恢复

    适合于数据量小的场景。

    目前用于表备份恢复,可以备份恢复单表和多表。

    • 磁盘
    • SSD

    可按用户需要进行指定对象的备份和恢复,灵活度高。

    当数据量大时,备份效率低。

    物理备份与恢复

    适用于数据量大的场景,主要用于全量数据备份恢复,也可对整个数据库中的WAL归档日志和运行日志进行备份恢复。

    数据量大时,备份效率高。

    当需要进行备份恢复操作时,主要从以下四个方面考虑数据备份方案。

    • 备份对业务的影响在可接受范围。
    • 数据库恢复效率。

      为尽量减小数据库故障的影响,要使恢复时间减到最少,从而使恢复的效率达到最高。

    • 数据可恢复程度。

      当数据库失效后,要尽量减少数据损失。

    • 数据库恢复成本。

  1. 在现网选择备份策略时参考的因素比较多,如备份对象、数据大小、网络配置等,[表2](#zh-cn_topic_0237088826_zh-cn_topic_0100209712_table1179095017218)列出了可用的备份策略和每个备份策略的适用场景。
  2. **表 2** 备份策略典型场景
  3. <table><thead><tr><th valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p87891650728"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p87891650728"></a><strong><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b0789750629"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b0789750629"></a>备份策略</strong></p></th><th valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p197897505215"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p197897505215"></a><strong><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b7789550226"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b7789550226"></a>关键性能因素</strong></p></th><th valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p67894501217"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p67894501217"></a><strong><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b1178912508215"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_b1178912508215"></a>典型数据量</strong></p></th><th valign="top"><p><a name="zh-cn_topic_0237088826_p15847132035410"></a><a name="zh-cn_topic_0237088826_p15847132035410"></a><strong><a name="zh-cn_topic_0237088826_b11848182019545"></a><a name="zh-cn_topic_0237088826_b11848182019545"></a>性能规格</strong></p></th></tr></thead><tbody><tr><td headers="mcps1.2.5.1.1 " valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p1578914506218"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p1578914506218"></a>集群备份</p></td><td headers="mcps1.2.5.1.2 " valign="top"><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_ul1178955013215"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_ul1178955013215"></a><ul><li>数据大小</li><li>网络配置</li></ul></td><td headers="mcps1.2.5.1.3 " valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p137891350921"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p137891350921"></a>数据:PB级</p><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p147895501622"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p147895501622"></a>对象:约100万个</p></td><td headers="mcps1.2.5.1.4 " valign="top"><p><a name="zh-cn_topic_0237088826_p89604485347"></a><a name="zh-cn_topic_0237088826_p89604485347"></a>备份:</p><a name="zh-cn_topic_0237088826_ul19663753143411"></a><a name="zh-cn_topic_0237088826_ul19663753143411"></a><ul><li>每个主机80 Mbit/sNBU/EISOO+磁盘)</li><li>约90%磁盘I/O速率(SSD/HDD)</li></ul></td></tr><tr><td headers="mcps1.2.5.1.1 " valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p17907501929"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p17907501929"></a>表备份</p></td><td headers="mcps1.2.5.1.2 " valign="top"><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_ul17901150926"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_ul17901150926"></a><ul><li>表所在模式</li><li>网络配置(NBU)</li></ul></td><td headers="mcps1.2.5.1.3 " valign="top"><p><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p779035016210"></a><a name="zh-cn_topic_0237088826_zh-cn_topic_0100209712_p779035016210"></a>数据:10 TB级</p></td><td headers="mcps1.2.5.1.4 " valign="top"><p><a name="zh-cn_topic_0237088826_p38521820175415"></a><a name="zh-cn_topic_0237088826_p38521820175415"></a>备份:基于查询性能速度+I/O速度</p><div><a name="zh-cn_topic_0237088826_note12046337427"></a><a name="zh-cn_topic_0237088826_note12046337427"></a>说明:<div><p><a name="zh-cn_topic_0237088826_p1856419442426"></a><a name="zh-cn_topic_0237088826_p1856419442426"></a>多表备份时,备份耗时计算方式:</p><pre><code><a name="zh-cn_topic_0237088826_screen10251104105812"></a><a name="zh-cn_topic_0237088826_screen10251104105812"></a>总时间 = 表数量 x 起步时间 + 数据总量 / 数据备份速度</code></pre><p><a name="zh-cn_topic_0237088826_p177603013578"></a><a name="zh-cn_topic_0237088826_p177603013578"></a>其中:</p><a name="zh-cn_topic_0237088826_ul940073335719"></a><a name="zh-cn_topic_0237088826_ul940073335719"></a><ul><li>磁盘起步时间为5s左右,NBU起步时间比DISK长(取决于NBU部署方案)。</li><li>数据备份速度为单节点50MB/s左右(基于1GB大小的表,物理机备份到本地磁盘得出此速率)。</li></ul><p><a name="zh-cn_topic_0237088826_p92312954310"></a><a name="zh-cn_topic_0237088826_p92312954310"></a>表越小,备份性能更低。</p></div></div></td></tr></tbody></table>