作者:我括弧你
每天学习亿点点

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

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

逻辑备份与恢复:通过逻辑导出对数据进行备份,逻辑备份只能基于备份时刻进行数据转储,所以恢复时也只能恢复到备份时保存的数据。对于故障点和备份点之间的数据,逻辑备份无能为力,逻辑备份适合备份那些很少变化的数据,当这些数据因误操作被损坏时,可以通过逻辑备份进行快速恢复。如果通过逻辑备份进行全库恢复,通常需要重建数据库,导入备份数据来完成,对于可用性要求很高的数据库,这种恢复时间太长,通常不被采用。由于逻辑备份具有平台无关性,所以更为常见的是,逻辑备份被作为一个数据迁移及移动的主要手段。

物理备份与恢复:通过物理文件拷贝的方式对数据库进行备份,以磁盘块为基本单位将数据从主机复制到备机。通过备份的数据文件及归档日志等文件,数据库可以进行完全恢复。物理备份速度快,一般被用作对数据进行备份和恢复,用于全量备份的场景。通过合理规划,可以低成本进行备份与恢复。

将两者进行一个总结:
在这里插入图片描述

物理备份与恢复

openGauss部署成功后,在数据库运行的过程中,会遇到各种问题及异常状态。openGauss提供了gs_basebackup工具做基础备份。

gs_basebackup工具由数据库初始用户执行。

gs_basebackup仅支持全量备份,不支持增量恢复。

gs_basebackup参数说明
在这里插入图片描述
当数据库发生故障时需要从备份文件进行恢复。因为gs_basebackup是对数据库按二进制进行备份,因此恢复时可以直接拷贝替换原有的文件, 或者直接在备份的库上启动数据库。

若要在原库的地方恢复数据库,参考步骤如下:

步骤1 停止数据库服务器

步骤2 将原数据库库和所有表空间复制到另外一个位置, 以备后面需要

步骤3 清理原库中的所有或部分文件

步骤4 使用数据库系统用户权限从备份中还原需要的数据库文件

步骤5 若数据库中存在链接文件, 需要修改使其链接到正确的文件.

步骤6 重启数据库服务器, 并检查数据库内容,确保数据库已经恢复到所需的状态。

逻辑备份与恢复

gs_dump是openGauss用于导出数据库相关信息的工具,用户可以自定义导出一个数据库或其中的对象(模式、表、视图等)。支持导出的数据库可以是默认数据库postgres,也可以是自定义数据库。

gs_dump工具由操作系统用户omm执行。

gs_dump工具在进行数据导出时,其他用户可以访问openGauss数据库(读或写)。

gs_dump支持将数据库信息导出至纯文本格式的SQL脚本文件或其他归档文件中。

gs_dump参数说明

在这里插入图片描述
在这里插入图片描述
gs_dumpall是openGauss用于导出所有数据库相关信息工具,它可以导出openGauss数据库的所有数据,包括默认数据库postgres的数据、自定义数据库的数据、以及openGauss所有数据库公共的全局对象。

gs_dumpall工具由操作系统用户omm执行。

gs_dumpall工具在进行数据导出时,其他用户可以访问openGauss数据库(读或写)。

gs_dumpall在导出openGauss所有数据库时分为两部分:

gs_dumpall自身对所有数据库公共的全局对象进行导出,包括有关数据库用户和组,表空间以及属性(例如,适用于数据库整体的访问权限)信息。

gs_dumpall通过调用gs_dump来完成openGauss中各数据库的SQL脚本文件导出,该脚本文件包含将数据库恢复为其保存时的状态所需要的全部SQL语句。

在这里插入图片描述

在这里插入图片描述
内容很多,今天就先更新这么多,明天继续消化,Fighting!!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐