首页 > 其他分享 >openGauss增量备份与恢复技术详解及定时触发实现

openGauss增量备份与恢复技术详解及定时触发实现

时间:2024-09-11 15:25:18浏览次数:3  
标签:11 13 备份 09 2024 详解 openGauss message

openGauss作为一款高性能、高可靠的开源数据库系统,支持全量备份和增量备份,以满足不同场景下的数据保护需求。本文将详细介绍openGauss的增量备份与恢复的实现方法,并提供详细的实现代码、配置说明以及如何实现定时触发增量备份操作。

0、前言

查看磁盘信息

通过df -lh命令查看

我这里将备份数据到<font style="color:rgb(18, 18, 18);">/media/user/D</font>盘符下。

查看系统信息

通过<font style="color:rgb(18, 18, 18);">cat /etc/os-release</font>命令查看

查看CPU架构信息

通过<font style="color:rgb(18, 18, 18);">lscpu</font>命令查看

一、openGauss增量备份概述

openGauss的增量备份通过gs_probackup工具实现。gs_probackup是openGauss提供的一个独立的二进制程序,支持全量备份、增量备份、对备份元数据进行管理、设置备份的留存策略、合并增量备份、删除过期备份等功能。

二、增量备份配置与实现

1. 配置参数

在openGauss中,要启用增量备份,需要在postgresql.conf配置文件中添加参数enable_cbm_tracking = on。这个参数用于启动数据库服务器对脏页数据修改的跟踪。

执行<font style="color:rgb(18, 18, 18);">gsql -d postgres -p 5432 -r</font>命令登录数据库,修改配置文件。

# 修改postgresql.conf
alter system set enable_cbm_tracking = on;
select pg_reload_conf();

执行完上面SQL代码后再次查看postgresql.conf配置文件,发现已经添加enable_cbm_tracking = on配置。

2. 初始化备份目录和实例

使用gs_probackup工具初始化备份目录和实例:

# 初始化备份目录
gs_probackup init -B /media/user/D/gs_backup/increment

# 添加备份实例
gs_probackup add-instance -B /media/user/D/gs_backup/increment -D /media/user/D/datanode/gsdn --instance=rscnode

3. 备份命令与参数解释

创建全量备份

# 创建全量备份
gs_probackup backup -B /media/user/D/gs_backup/increment --instance=rscnode -b full -d electric

参数说明:

  • -B /media/user/D/gs_backup/increment:指定备份路径。
  • --instance=rscnode:指定备份实例。
  • -b full:指定备份模式为全量备份。
  • -d electric:指定要备份的数据库名

上面的命令执行后会输出如下信息:

omm@user-pc:/media/user/D/datanode/gsdn$ gs_probackup backup -B /media/user/D/gs_backup/increment --instance=rscnode -b full -d electric
INFO: Backup start, gs_probackup version: 2.4.2, instance: rscnode, backup ID: SJMVRR, backup mode: FULL, wal mode: STREAM, remote: false, compress-algorithm: none, compress-level: 1
LOG: Backup destination is initialized
LOG: This openGauss instance was initialized with data block checksums. Data block corruption will be detected
LOG: Database backup start
LOG: started streaming WAL at 6/9F000000 (timeline 1)
[2024-09-11 13:40:44]: check identify system success                                                
[2024-09-11 13:40:44]: send START_REPLICATION 6/9F000000 success                                    
[2024-09-11 13:40:44]: keepalive message is received                                                
[2024-09-11 13:40:44]: keepalive message is received                                                
INFO: PGDATA size: 13GB
INFO: Start backing up files
LOG: Creating page header map "/media/user/D/gs_backup/increment/backups/rscnode/SJMVRR/page_header_map"
[2024-09-11 13:40:49]: keepalive message is received                                                
[2024-09-11 13:40:54]: keepalive message is received         ] 42% (2653/6221, done_files/t                                                                                                    
[2024-09-11 13:40:59]: keepalive message is received                                                
[2024-09-11 13:41:04]: keepalive message is received         ]                                                                                                    
[2024-09-11 13:41:09]: keepalive message is received                                                
[2024-09-11 13:41:14]: keepalive message is received                                                                                 
[2024-09-11 13:41:19]: keepalive message is received                                                    backup file 
[2024-09-11 13:41:24]: keepalive message is received                                                
[2024-09-11 13:41:29]: keepalive message is received====     ] 90% (5626/6221, done_files/to                                                                                                    
[2024-09-11 13:41:34]: keepalive message is received                                                
[2024-09-11 13:41:39]: keepalive message is received=====    ]                                                                                                     
[2024-09-11 13:41:45]: keepalive message is received                                                                                  
[2024-09-11 13:41:50]: keepalive message is received                                                
[2024-09-11 13:41:55]: keepalive message is received                                                     ackup file 
[2024-09-11 13:42:00]: keepalive message is received                                                
[2024-0

标签:11,13,备份,09,2024,详解,openGauss,message
From: https://blog.csdn.net/u010490822/article/details/142141197

相关文章

  • 互联网算法备案必要性+攻略全流程详解【附件+流程】
    一、算法备案的重要性算法备案是指相关企业或组织向有关部门提交其使用的算法的相关信息,以接受监管和审查。这一举措有助于确保算法的公正性、透明性和合法性,保护用户的权益,促进数字经济的健康发展。算法备案必要性强制性例如,在推荐系统中,如果算法存在偏见或歧视,可能会导致......
  • Oracle索引常用操作详解
    在Oracle中,索引是一种数据库对象,用于提高查询性能。通过索引,Oracle可以更快地找到数据,尤其是在处理大量数据时。常见的索引类型包括B-Tree索引、位图索引、唯一索引等。索引可以加速查询,但过多的索引可能会影响数据修改的性能,因此需要合理使用。1.索引的基本操作创......
  • 重装系统详解
            详细的讲解一下如何重装系统,简单易上手。一些废话:    为什么我要学重装系统,因为一个坑,我电脑里面配置的环境和存储的文件太杂乱,我自己又不想慢慢的去整理,所以打算一下全都删干净了从头开始,但是我找店铺去重装系统的时候,他给我安装了一个盗版的系统,花......
  • Java 常用集合方法详解
    在Java编程中,集合框架提供了丰富的数据结构和算法来存储和操作数据。集合框架主要包含了List、Set和Map接口,其中List和Map是最常用的接口。本文将深入探讨List和Map接口下的集合类及其常用方法,包括实际应用示例和代码片段。1.List接口及其常用方法List接口......
  • Java 排序算法详解
    排序是计算机科学中的基本操作,Java提供了多种排序算法来满足不同的需求。常见的排序算法包括冒泡排序、选择排序、插入排序、归并排序、快速排序和堆排序。本文将逐一介绍这些排序算法及其Java实现。1.冒泡排序(BubbleSort)冒泡排序是一种简单的排序算法,其基本思想是......
  • 零基础国产GD32单片机编程入门(十六)DMA详解及ADC-DMA方式采集含源码
    文章目录一.概要二.GD32F103C8T6单片机DMA外设特点三.GD32单片机DMA内部结构图四.DMA各通道请求五.GD32F103C8T6单片机ADC-DMA采集例程六.工程源代码下载七.小结一.概要基本概念:DMA是DirectMemoryAccess的首字母缩写,是一种完全由硬件执行数据交换的工作方式。DM......
  • 【卷起来】VUE3.0教程-06-组件详解
    ============各位看官,点波关注和赞吧===========组件允许我们将UI划分为独立的、可重用的部分,并且可以对每个部分进行单独的思考。在实际应用中,组件常常被组织成层层嵌套的树状结构:这和我们嵌套HTML元素的方式类似,Vue实现了自己的组件模型,使我们可以在每个组件内封装......
  • 全网最火的AI技术:GraphRag概念详解
    GraphRAG是一种结合了知识图谱(KnowledgeGraph)和大语言模型(LLM)的检索增强生成(Retrieval-AugmentedGeneration,RAG)技术,旨在通过将结构化和非结构化数据相结合来增强生成式AI的表现。它的出现代表了人工智能生成技术与知识表示领域的一次重要融合,为许多需要复杂信息检索和生成的应......
  • (转)万字长文——Go 语言现代命令行框架 Cobra 详解
    原文:https://juejin.cn/post/7231197051203256379Cobra是一个Go语言开发的命令行(CLI)框架,它提供了简洁、灵活且强大的方式来创建命令行程序。它包含一个用于创建命令行程序的库(Cobra库),以及一个用于快速生成基于Cobra库的命令行程序工具(Cobra命令)。Cobra是由Go团队成员......
  • Kafka客户端核心参数详解
    目录从客户端理解Kafka正确使用方式一、客户端1、消息发送者主流程2、消息消费者主流程二、从客户端属性来梳理客户端工作机制1、消费者分组消费机制2、生产者拦截器机制3、消息序列化机制4、消息分区路由机制5、生产者消息缓存机制6、发送应答机制7、生产者消息......