达梦数据守护集群_备库重建(二)

news2024/12/23 23:43:33

目录

1、概述

1.1 实验场景

1.2 实验环境

2、故障模拟

3、重建方案1

3.1 登录主库、联机备份

3.2 脱机还原备库

3.3 模拟新业务数据

3.4 主库备份归档

3.5 利用归档恢复备库

3.6 启动备库

3.7 验证

4、重建方案2

4.1 登录主库、联机备份

4.2 脱机还原备库

4.3 模拟新业务数据

4.4 查看归档

4.5 利用归档恢复备库

4.6 启动备库

4.7 验证


1、概述

1.1 实验场景

        上一篇博文《达梦数据守护集群_组分裂的数据恢复(一)》,试验了发生组分裂后,使用“故障前的备份集”恢复备库的方法。上篇文章中提到的备库重建方法和本文要讨论的备库重建方法,不限于组分裂后的备库重建,其他故障类型的备库重建也可以使用这些方法。

        本文要讨论的场景如下:

        在生产系统中,使用联机备份、脱机还原的方法重建备库。当数据规模比较大、联机备份耗时较长、应用压力比较大的情况下,主库联机备份、备库脱机还原过程中,主库可能又新产生了大量归档日志。使用上述步骤重建备库后,主库向备库同步历史数据的时间会比较久,主备库数据会在比较长的一段时间内处于不一致状态。

        对这种情况,可以通过归档备份、还原和归档恢复功能,将备库数据恢复到更加接近主库的最新状态,有效减少备库加入主备系统后的历史数据同步时间。

1.2 实验环境

操作系统:CentOS7.6

达梦数据库版本:DM8_20240712

达梦守护集群版本:V4.0

集群主库(1号库):192.168.220.101

集群备库(2号库):192.168.220.102

集群确认监视器:192.168.220.109

2、故障模拟

模拟备库192.168.220.102发生故障

1)登录备库,查看进程号

ps -ef|grep dmdba

2)制造备库故障

kill -9 7158
kill -9 7160
rm /dm8/datadm/DM8DW/MAIN.DBF

3、重建方案1

3.1 登录主库、联机备份

disql SYSDBA/SYSDBA:6236
BACKUP DATABASE FULL BACKUPSET '/dm8/backup/full_20241026_01' WITHOUT LOG; 

3.2 脱机还原备库

使用scp 将备份集发送到备库,在主库执行

scp -r ./full_20241026_01/  192.168.220.102:/dm8/backup/

脱机还原,在备库执行

dmrman
restore database '/dm8/datadm/DM8DW/dm.ini' from backupset '/dm8/backup/full_20241026_01';

3.3 模拟新业务数据

登录主库,模拟新业务数据

disql SYSDBA/SYSDBA:6236
create table tb_t1026
(
c1 varchar2(10),
c2 varchar2(10)
);

insert into tb_t1026 values('aaa','1111');
insert into tb_t1026 values('bbb','222');
commit;

3.4 主库备份归档

1)查看备份集LSN

SELECT SF_BAKSET_BACKUP_DIR_ADD('DISK','/dm8/backup');
select backup_name,backup_path,begin_lsn from v$backupset;

2)备份归档

BACKUP ARCHIVE LOG FROM LSN 66685 BACKUPSET '/dm8/backup/ARCH_BAK_20241026_01';

3.5 利用归档恢复备库

1)主库执行

使用scp 将备份集发送到备库

scp -r ./ARCH_BAK_20241026_01/  192.168.220.102:/dm8/backup/

2)备库执行

开始重建备库

dmrman
restore ARCHIVE LOG FROM BACKUPSET '/dm8/backup/ARCH_BAK_20241026_01' to ARCHIVEDIR '/dm8/archdm';
recover database '/dm8/datadm/DM8DW/dm.ini' with archivedir '/dm8/archdm';
recover database '/dm8/datadm/DM8DW/dm.ini' update db_magic;

3.6 启动备库

执行启动服务命令

DmServiceDM8DW02 start
DmWatcherServiceDM8DW02 start

3.7 验证

在备库执行

disql SYSDBA/SYSDBA:6236
SELECT * FROM tb_t1026;

备库重建成功!

4、重建方案2

        方案2与方案1的流程基本相同。区别是:方案1将归档文件备份到“备份集”中再发送给备库;方案2是直接将归档文件发送给备库。

4.1 登录主库、联机备份

disql SYSDBA/SYSDBA:6236
BACKUP DATABASE FULL BACKUPSET '/dm8/backup/full_20241026_02';

4.2 脱机还原备库

使用scp 将备份集发送到备库,在主库执行

scp -r ./full_20241026_02/  192.168.220.102:/dm8/backup/

脱机还原,在备库执行

dmrman
restore database '/dm8/datadm/DM8DW/dm.ini' from backupset '/dm8/backup/full_20241026_02';

4.3 模拟新业务数据

登录主库,模拟新业务数据

disql SYSDBA/SYSDBA:6236
create table tb_t1026_02
(
c1 varchar2(10),
c2 varchar2(10)
);

insert into tb_t1026_02 values('aaa','1111');
insert into tb_t1026_02 values('bbb','222');
commit;

4.4 查看归档

登录主库,查看归档,根据归档生成的时间判断需要哪些归档文件

4.5 利用归档恢复备库

1)主库执行

scp /dm8/archdm/ARCHIVE_LOCAL1* 192.168.220.102:/dm8/archdm

2)备库执行

开始重建备库

dmrman
recover database '/dm8/datadm/DM8DW/dm.ini' with archivedir '/dm8/archdm';
recover database '/dm8/datadm/DM8DW/dm.ini' update db_magic;

4.6 启动备库

执行启动服务命令

DmServiceDM8DW02 start
DmWatcherServiceDM8DW02 start

4.7 验证

在备库执行

disql SYSDBA/SYSDBA:6236
SELECT * FROM tb_t1026_02;

备库重建成功!

本文结束

参考文档《DM8数据守护与读写分离集群V4.0》

20241026

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2224132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

是否有必要考PG认证?

如今PG很火,我在BOSS招聘查了一下,确实很多职位需要PG.那么考个PG认证确实很有必要! 当然这么快给出肯定答案,这公众号是发不出来的.必须有300个字才可以哦! 大家友情支持下,点点广告! 听我来细说 1.2.3 本小仙40有余可以说是80后.我们这代80后什么好事都没捞着,糟糕的事没有…

基于docker 部署redis

1、拉取镜像 docker pull redis:latest如果拉取失败可以尝试下配置镜像源,具体参考如下,目前暂可以使用 Docker切换镜像源-CSDN博客 2、创建配置文件 mkdir /usr/local/redis/conf vim redis.conf bind 0.0.0.0#protected-mode no port 6379 tcp-b…

用更多的钱买电脑而不是手机

如果,我们对自己的定义是知识工作者,那么在工作、学习相关的电子设备投入上,真的别舍不得花钱。 需要留意的是,手机,对于大部分在电脑前工作的人,不是工作设备。在我看来,每年投入到电脑的钱&…

前端经典【面试题】持续更新HTML、CSS、JS、VUE、FLUTTER、性能优化等

HTML/CSS 面试题 什么是语义化 HTML&#xff1f; 说明&#xff1a;语义化 HTML 使用 HTML 标签来描述内容的含义&#xff0c;而不仅仅是其外观。使用语义化标签可以提高可读性和可访问性&#xff0c;并对 SEO 友好。示例&#xff1a; <header><h1>网站标题</h1&…

基于C#开发游戏辅助工具的Windows底层相关方法详解

开发游戏辅助工具通常需要深入了解Windows操作系统的底层机制&#xff0c;以及如何与游戏进程进行有效交互。本文将基于C#语言&#xff0c;从Windows底层方法的角度来详细讲解开发游戏辅助工具的相关技术和概念。 一、游戏辅助工具的基本概述 游戏辅助工具&#xff0c;通常被称…

Java应用程序的测试覆盖率之设计与实现(三)-- jacoco cli 客户端

一、背景 上文已把覆盖率数据采集好了,并提供远程连接的tcp地址及端口。 jacoco cli文档jacoco cli jar包jacococli.jar 我下载好了,放在github工程里。 本文主要是介绍如何使用jacoco cli 客户端读取并生成覆盖率报告。 二、使用 1、dump覆盖率统计 java -jar doc/jacoc…

duilib的应用 在双屏异分辨率的显示器上 运行显示不出来

背景&#xff1a;win11&#xff0c;duilib应用&#xff0c;双显示器&#xff0c;两台分辨率相同&#xff0c;分别设置不同的缩放以后&#xff0c;应用运行以后&#xff0c;程序闪一下消失或者程序还在&#xff0c;但是UI显示不出来。 原因 窗口风格设置不合理&#xff0c;所以…

【办公类-57-01】美工室材料报销EXCEL表批量插入截图(图片)

背景需求&#xff1a; 我们班分到美工室&#xff0c;需要准备大量材料&#xff0c;根据原始的报销单EXCLE&#xff0c;里面有商品名称、图片、链接、单位、数量等信息 今天我和搭档一起填写新表&#xff0c;发现手机截图的图片插入EXCEL后非常大&#xff0c; 需要手动调整图片…

alovajs:前后端交互还能这么玩?

嘿&#xff0c;小伙伴们&#xff01;今天我要和大家分享一个超级有趣的发现。最近在折腾项目时&#xff0c;我遇到了一个叫 alovajs 的工具&#xff0c;它居然能帮我们构建 Client-Server 交互层&#xff01;听起来有点高大上&#xff0c;但其实超级实用。一起来探索这个新大陆…

JS+Springboot做一个交互Demo

背景&#xff1a;老大做了一个 SDK&#xff0c;包含字符加解密、文件加解密&#xff0c;要求能从前端访问&#xff0c;并且能演示的 Demo。 思路&#xff1a;html 写页面&#xff0c;js 发送请求&#xff0c;freemarker 做简单的参数交互&#xff0c;JAVA 后端处理。 一、项目依…

element 按钮变形 el-button样式异常

什么都没动&#xff0c;element UI的按钮变形了&#xff0c;莫名其妙&#xff0c;连官网的也变形了&#xff0c;换了其它浏览器又正常&#xff0c; 难道这是element UI的问题&#xff1f;NO&#xff0c;是浏览器的插件影响到了&#xff01;去扩展插件里面一个个关闭扩展&#x…

使用高德API和MapboxGL实现路径规划并语音播报

概述 本文使用高德API实现位置查询和路径规划&#xff0c;使用MapboxGL完成地图交互与界面展示&#xff0c;并使用Web Speech API实现行驶中路线的实时语音播报。 效果 Web Speech API简介 Web Speech API 使你能够将语音数据合并到 Web 应用程序中。Web Speech API 有两个部…

软件测试的重要一环:「性能测试」怎么做?

性能测试是软件测试中的重要一环&#xff0c;今天给大家介绍性能测试及如何使用RunnerGo完成性能测试任务。 性能测试是什么&#xff1f; 一句话概括&#xff1a;不断地通过不同场景的系统表现去探究系统设计与资源消耗之间的平衡&#xff0c;为开发人员提供消除瓶颈所需的诊…

IntelliJ IDEA 设置数据库连接全局共享

前言 在日常的软件开发工作中&#xff0c;我们经常会遇到需要在多个项目之间共享同一个数据库连接的情况。默认情况下&#xff0c;IntelliJ IDEA 中的数据库连接配置是针对每个项目单独存储的。这意味着如果你在一个项目中配置了一个数据库连接&#xff0c;那么在另一个项目中…

从零搭建开源陪诊系统:关键技术栈与架构设计

构建一个开源陪诊系统是一个涉及多种技术的复杂工程。为了让这个系统具备高效、可靠和可扩展的特点&#xff0c;我们需要从架构设计、技术栈选择到代码实现等方面进行全面的考量。本文将从零开始&#xff0c;详细介绍搭建开源陪诊系统的关键技术栈和架构设计&#xff0c;并提供…

C#中的委托、匿名方法、Lambda、Action和Func

委托 委托概述 委托是存有对某个方法的引用的一种引用类型变量。定义方法的类型&#xff0c;可以把一个方法当作另一方法的参数。所有的委托&#xff08;Delegate&#xff09;都派生自 System.Delegate 类。委托声明决定了可由该委托引用的方法。 # 声明委托类型 委托类型声…

汽车免拆诊断案例 | 2019 款奥迪 A6L 车行驶中偶发熄火

故障现象  一辆2019款奥迪A6L车&#xff0c;搭载2.0T发动机&#xff0c;累计行驶里程约为9万km。车主反映&#xff0c;车辆行驶中偶发熄火&#xff0c;故障频率较高。 故障诊断  接车后试车&#xff0c;起动发动机&#xff0c;可以正常起动着机。使用故障检测仪检测&#x…

ELK之路第一步——Elasticsearch集群的搭建以及踩坑记录

elasticSearch集群 前言一、架构二、下载三、虚拟机相关设置3.1 创建es用户3.2 为建es用户赋权sudo3.3 更换es目录所属用户 四、Elasticsearch配置文件修改4.1 修改elasticsearch.yml4.2 修改jvm.options4.3 修改jdk路径 五、启动六、启动报错七、可视化界面cerebro 前言 Elk&…

springboot080房屋租赁管理系统的设计与实现(论文+源码)_kaic

毕 业 设 计&#xff08;论 文&#xff09; 题目&#xff1a;房屋租赁管理系统的设计与实现 摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好…

Linux 基础io_ELF_虚拟物理地址_动态库加载

1.可执行程序格式 ELF [wwshcss-ecs-178e myshell]$ ll total 56 -rw-rw-r-- 1 wws wws 92 Oct 17 19:14 file -rw-rw-r-- 1 wws wws 82 Oct 12 16:51 makefile -rw-r--r-- 1 wws wws 90 Oct 17 19:13 myfile -rwxrwxr-x 1 wws wws 20128 Oct 16 21:02 myshell -rw-r…