ADG主库归档丢失,备库测试

2024-05-27 20:48

本文主要是介绍ADG主库归档丢失,备库测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ADG主库上归档丢失恢复备库测试模拟了下在主库上丢失归档导致备库出现gap,无需重建恢复备库的情况
1制造gap
主库
ALTER system SET log_archive_dest_state_2 = 'defer';
一些dml操作
alter system switch logfile;备库此时的mrp是等待log状态
SQL> select process,client_process,sequence#,status from v$managed_standby;PROCESS CLIENT_PROCESS SEQUENCE# STATUSARCH ARCH 0 CONNECTED
ARCH ARCH 0 CONNECTED
ARCH ARCH 0 CONNECTED
ARCH ARCH 22 CLOSING
RFS UNKNOWN 0 IDLE
RFS ARCH 0 IDLE
MRP0 N/A 23 WAIT_FOR_LOGSQL> select * from v$archive_gap;no rows selected
现在的这种情况oracle不认为是gap,所以没记录主库上查看当前sequence
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /data/arch
Oldest online log sequence 25
Next log sequence to archive 27
Current log sequence 27从库查看应用的归档
SQL> select sequence#, applied from v$archived_log where applied='YES' order by sequence#;SEQUENCE# APPLIED10 YES
11 YES
12 YES
13 YES
14 YES
14 YES
15 YES
15 YES
16 YES
16 YES
17 YES
18 YES
19 YES
20 YES
21 YES
22 YES主库上删除24,25,26三个sequence归档
select sequence#,name from v$archived_log;
主库
ALTER system SET log_archive_dest_state_2 = 'enable';在备库上查看
select * from v$archive_gap;THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#1        24         26
1
发现已经丢失了24,25,26三个归档文件
SQL> select sequence#,applied from v$archived_log;SEQUENCE# APPLIED10 YES
11 YES
12 YES
13 YES
14 YES
15 YES
15 YES
14 YES
16 YES
16 YES
17 YES
17 NO
18 YES
18 NO
19 YES
20 YES
21 YES
22 YES
23 YES
27 NO
停止从库的同步
SELECT (SELECT MIN(d.CHECKPOINT_CHANGE#) FROM vdatafile d) datafile_scn,(SELECT MIN(d.CHECKPOINT_CHANGE#) FROM vdatafile d) datafile_scn,(SELECT MIN(d.CHECKPOINT_CHANGE#)FROM vdatafile_header dWHERE rownum = 1) datafile_header_scn,(SELECT current_scn FROM vdatabase) current_scn,(SELECT b.NEXT_CHANGE# FROM vdatabase) current_scn,(SELECT b.NEXT_CHANGE#FROM varchived_log bWHERE b.SEQUENCE# = 23AND resetlogs_change# =(SELECT d.RESETLOGS_CHANGE# FROM v$database d)AND rownum = 1) NEXT_CHANGE#FROM dual;
查找最小的scn
DATAFILE_SCN DATAFILE_HEADER_SCN CURRENT_SCN NEXT_CHANGE#1017228         1017228     1017227      1017228
1
在主库备份增量
RMAN> backup as compressed backupset incremental from SCN 1017227 database format '/home/oracle/standby_%d_%T_%U.bak' include current controlfile for standby filesperset=5 tag 'FOR STANDBY';
传递到备库,注册应用
重启备库到nomount
show paramete controlRMAN> restore standby controlfile  from '/home/oracle/standby_DBADB_20170422_0js2b2hl_1_1.bak';RMAN> alter database mount;RMAN> catalog start with '/home/oracle/archivelog';searching for all files that match the pattern /home/oracle/archivelogList of Files Unknown to the DatabaseFile Name: /home/oracle/archivelog/standby_DBADB_20170422_0is2b2hk_1_1.bakDo you really want to catalog the above files (enter YES or NO)? yes
cataloging files…
cataloging doneList of Cataloged Files
File Name: /home/oracle/archivelog/standby_DBADB_20170422_0is2b2hk_1_1.bakRMAN> recover database noredo;alter database recover managed standby database using current logfile disconnect from session;
SQL> SELECT * FROM V$ARCHIVE_GAP;no rows selectedselect sequence#,applied from v$archived_log;
SEQUENCE# APPLIED28 YES
1
此时的备库是mount状态的,需要到open状态
alter database recover managed standby database cancel;
alter database open;
alter database recover managed standby database using current logfile disconnect from session;
————————————————
版权声明:本文为CSDN博主「aoerqileng」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/aoerqileng/article/details/70432602

 

这篇关于ADG主库归档丢失,备库测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1008557

相关文章

mss32.dll文件丢失怎么办? 电脑提示mss32.dll丢失的多种修复方法

《mss32.dll文件丢失怎么办?电脑提示mss32.dll丢失的多种修复方法》最近,很多电脑用户可能遇到了mss32.dll文件丢失的问题,导致一些应用程序无法正常启动,那么,如何修复这个问题呢... 在电脑常年累月的使用过程中,偶尔会遇到一些问题令人头疼。像是某个程序尝试运行时,系统突然弹出一个错误提

电脑提示找不到openal32.dll文件怎么办? openal32.dll丢失完美修复方法

《电脑提示找不到openal32.dll文件怎么办?openal32.dll丢失完美修复方法》openal32.dll是一种重要的系统文件,当它丢失时,会给我们的电脑带来很大的困扰,很多人都曾经遇到... 在使用电脑过程中,我们常常会遇到一些.dll文件丢失的问题,而openal32.dll的丢失是其中比较

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl

电脑提示msvcp90.dll缺少怎么办? MSVCP90.dll文件丢失的修复方法

《电脑提示msvcp90.dll缺少怎么办?MSVCP90.dll文件丢失的修复方法》今天我想和大家分享的主题是关于在使用软件时遇到的一个问题——msvcp90.dll丢失,相信很多老师在使用电脑时... 在计算机使用过程中,可能会遇到 MSVCP90.dll 丢失的问题。MSVCP90.dll 是 Mic

电脑开机提示krpt.dll丢失怎么解决? krpt.dll文件缺失的多种解决办法

《电脑开机提示krpt.dll丢失怎么解决?krpt.dll文件缺失的多种解决办法》krpt.dll是Windows操作系统中的一个动态链接库文件,它对于系统的正常运行起着重要的作用,本文将详细介绍... 在使用 Windows 操作系统的过程中,用户有时会遇到各种错误提示,其中“找不到 krpt.dll”

电脑报错cxcore100.dll丢失怎么办? 多种免费修复缺失的cxcore100.dll文件的技巧

《电脑报错cxcore100.dll丢失怎么办?多种免费修复缺失的cxcore100.dll文件的技巧》你是否也遇到过“由于找不到cxcore100.dll,无法继续执行代码,重新安装程序可能会解... 当电脑报错“cxcore100.dll未找到”时,这通常意味着系统无法找到或加载这编程个必要的动态链接库

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题