最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Oracle?DG?的歸檔缺失修復(fù)方法

 更新時(shí)間:2025年02月11日 08:47:10   作者:數(shù)據(jù)與人文  
文章介紹了Oracle DG歸檔缺失的修復(fù)方法,包括檢查歸檔同步情況、查看GAP日志應(yīng)用情況以及不同的修復(fù)思路,如歸檔還在主庫(kù)、歸檔已在備庫(kù)或歸檔已被刪除等,感興趣的朋友一起看看吧

故障檢查

檢查歸檔同步情況

一、查看數(shù)據(jù)庫(kù)的情況

select database_role,flashback_on,open_mode,current_scn from v$database
DATABASE_ROLE   FLASHBACK_ON      OPEN_MODE         CURRENT_SCN
---------------- ------------------ -------------------- ---------------
PHYSICAL STANDBY NO        READ ONLY WITH APPLY  16657544972059

二、查看歸檔的最大線程與最大接收的歸檔情況。

select thread#,max(sequence#) from v$archived_log group by thread#;
生產(chǎn)庫(kù):
SQL> select thread#,max(sequence#) from v$archived_log group by thread#;
   THREAD# MAX(SEQUENCE#)
---------- --------------
   1     136973
   2     132693
   4     149599
   3     133277
--DG庫(kù)
SYS@hisnewdb> select thread#,max(sequence#) from v$archived_log group by thread#;
   THREAD# MAX(SEQUENCE#)
---------- --------------
   1     136973
   2     132693
   4     149598
   3     133277   
  • 可見(jiàn)4個(gè)節(jié)點(diǎn)歸檔是都有會(huì)過(guò)來(lái)的,sequence都能對(duì)得上。

三、查是否存在GAP

select * from v$archived_gap;

日志應(yīng)用情況

查看延時(shí)的應(yīng)用情況

select name ,value,time_computed from v$dataguard_stats where rownum<33;
NAME         VALUE                  TIME_COMPUTED
-------------------------------- ---------------------------------------------------------------- ------------------------------
transport lag       +11 06:41:27                03/04/2021 16:41:20
apply lag       +11 06:41:27                03/04/2021 16:41:20
apply finish time     +00 04:23:39.868              03/04/2021 16:41:20
estimated startup time     37                  03/04/2021 16:41:20
  • 可看到apply lag的應(yīng)用已經(jīng)延時(shí)11天6小時(shí)了。
  • apply finish time應(yīng)用最快的恢復(fù)時(shí)長(zhǎng)為4小時(shí)。

恢復(fù)思路

應(yīng)用日志

alter database recover managed standby databse cancel; --取消應(yīng)用日志
alter database open read only;  --打開只讀庫(kù)
alter database recover managed standby ; 
alter database recover managed standby disconnect from session; -- 后臺(tái)應(yīng)用,建議上面命令,放前臺(tái)應(yīng)用。

歸檔還保留或者GAP較少的情況

1)歸檔還在主庫(kù)

方法一:

首先通過(guò)備庫(kù)sql查出相應(yīng)的 node[thread#] 和歸檔位置 name:

傳輸上面文件到備庫(kù)歸檔位置 archive log list

備庫(kù)上注冊(cè)歸檔文件alter database register logfile '歸檔文件絕對(duì)路徑' 或rman注冊(cè)日志catalog start with '';

應(yīng)用日志,查看select * from V$ARCHIVE_GAP;,監(jiān)視是否還存在其它的GAP出現(xiàn)。如出現(xiàn),如上面步驟循環(huán)操作。

方法二:

  • 在配置 fal_client=備庫(kù)的監(jiān)聽(tīng)和falserver={主庫(kù)的監(jiān)聽(tīng)}
  • 直接應(yīng)用日志,由備庫(kù)尋找日志。

2)歸檔已在備庫(kù)

應(yīng)用日志

歸檔已經(jīng)被刪除或GAP較多的情況

查看歸檔所在的位置

alert.log日志:

  • 提供等thread 線程4的序列為148164的歸檔,獲取的序號(hào)有148164-148165
  • control_keep_record_keep_time是控制文件的重用記錄數(shù)據(jù)。提示在這個(gè)記錄天數(shù)內(nèi)沒(méi)找到歸檔文件,建議設(shè)置更長(zhǎng)些天數(shù)。以便GAP找到缺失的日志。
    • 默認(rèn)7天,1-365天范圍。
    • 記錄的是歸檔日志,各種備份記錄。
    • 不記錄數(shù)據(jù)文件,表空間,redo thread記錄。除非被drop,否則不會(huì)重用這部分記錄
started logmerger process
Thu Mar 04 16:19:53 2021
Managed Standby Recovery not using Real Time Apply
Parallel Media Recovery started with 16 slaves
Waiting for all non-current ORLs to be archived...
All non-current ORLs have been archived.
Media Recovery Waiting for thread 4 sequence 148164
Fetching gap sequence in thread 4, gap sequence 148164-148165
Thu Mar 04 16:19:57 2021
Completed:  alter database recover managed standby database disconnect from session
----------
Thu Mar 04 16:21:50 2021
FAL[client]: Failed to request gap sequence
 GAP - thread 4 sequence 148164-148165
 DBID 3828421454 branch 984679630
FAL[client]: All defined FAL servers have been attempted.
------------------------------------------------------------
Check that the CONTROL_FILE_RECORD_KEEP_TIME initialization
parameter is defined to a value that's sufficiently large
enough to maintain adequate log switch information to resolve
archivelog gaps.
------------------------------------------------------------
 Thu Mar 04 16:22:25 2021
RFS[18]: Selected log 29 for thread 4 sequence 149600 dbid -466545842 branch 984679630
Thu Mar 04 16:22:25 2021

1)找到當(dāng)前的最小SCN

對(duì)比數(shù)據(jù)文件最后檢查點(diǎn)的scn,數(shù)據(jù)文件頭部檢查點(diǎn)的scn,缺失歸檔的對(duì)應(yīng)scn(下個(gè)日志文件第一個(gè)更改號(hào)),當(dāng)前數(shù)據(jù)庫(kù)的scn:

select thread#,low_sequence#,high_sequence# from v$archive_gap;
col datafile_scn for 999999999999999
col DATAFILE_HEADER_SCN for 999999999999999
col current_scn for 999999999999999
col  next_change# for 999999999999999
select ( select min(d.checkpoint_change#) from v$datafile d ) datafile_scn ,
  ( select min(d.checkpoint_change#) from v$datafile_header d where rownum=1) datafile_header_scn,
  (select current_scn from v$database) current_scn,
  (select next_change# from v$archived_log where sequence#=148164 and resetlogs_change# = (select d.resetlogs_change# from v$database d ) and rownum=1 ) next_change#
from dual;
DATAFILE_SCN     DATAFILE_HEADER_SCN      CURRENT_SCN     NEXT_CHANGE#
---------------- ------------------- ---------------- ----------------
  16657544969028      16657544972060   16657544972059
  • 取上面最小的scn作為增量備份的SCN

2)主庫(kù)做SCN增量備份

停用備庫(kù)的日志應(yīng)用

alter database recover managed standby database cancel;

rman備份

  • 切換日志
  • 切記備份當(dāng)前控制文件
  • 增量scn備份
run {
allocate channel c1 device type disk; 
allocate channel c2 device type disk; 
allocate channel c3 device type disk; 
allocate channel c4 device type disk; 
allocate channel c5 device type disk; 
allocate channel c6 device type disk; 
CONFIGURE DEVICE TYPE DISK PARALLELISM 6 BACKUP TYPE TO BACKUPSET;
backup as compressed backupset current controlfile for standby format '/home/oracle/backup/backup_ctl_%U.rman';
backup as compressed backupset incremental from scn 16657544969028 database format '/home/oracle/backup/backup_%d_%s_%c_%U_%T.rman' include 
current controlfile for standby filesperset 10 tag 'forsdb_16657544969028_0304';
release  channel c1 ; 
release  channel c2 ; 
release  channel c3 ; 
release  channel c4 ; 
release  channel c5 ; 
release  channel c6 ; 

傳輸備份文件到備庫(kù)

scp -rp /home/oracle/backup/backup host2:/home/oracle 

介質(zhì)恢復(fù)備庫(kù)

  • 查出控制文件的絕對(duì)目錄位置,后停備庫(kù)
  • 啟動(dòng)到nomount
  • 恢復(fù)控制文件
  • 啟動(dòng)到mount
  • 恢復(fù)數(shù)據(jù)文件
  • 檢查rman進(jìn)展
select name from v$controlfile;
shu immediate;
startup nomount;
rman target / <<eof
restore standby controlfile from '/home/oracle/backup/backup_ctl_%U.rman';
alter database mount; 
eof
  • 如果沒(méi)有單獨(dú)備份standby controlfile,就一個(gè)一個(gè)文件來(lái)測(cè)試恢復(fù)standby controflie
restore standby controlfile to '/oradata/hisnewdb/control01.ctl' from  '/home/oracle/backup/某個(gè)文件';
  • 如果文件太多,可以先rman注冊(cè)文件后,再恢復(fù)控制文件。
    • 要找開備庫(kù)mount狀態(tài)才能注冊(cè)
rmant target / <<eof
startup mount; 
catalog start with '/home/oracle/backup/';
list backup of controlfile;
restore standby controlfile automatic;
eof
#大概是這樣。restore standby controlfile automatic;如果不通,就采用上面list的信息,找到具體含有standby controflile的備份文件,再通過(guò)restore standby controfile from '';來(lái)恢復(fù) 。
catalog start with '/home/oracle/backup/';
recover database noredo;

查看rman的恢復(fù)進(jìn)展:

set line 9999
select sid,serial#,opname,round(sofar/totalwork*100) completed,trunc(elapsed_seconds/60) elapsed ,trunc(time_remaining/60) remaining,context ,target,sofar,totalwork
from v$session_longops
where opname like 'RMAN%' and opname not like '%aggregate%' and totalwork!=0 and sofar<>totalwork;

應(yīng)用日志

檢查standby redo files是否存在:

select * from v$standby_log;

注冊(cè)standby redolog files

-- 添加單個(gè)文件:
alter database add standby logfile group {組號(hào)} 'standby redo logs files 絕對(duì)目錄文件';
-- 添加多個(gè)standby redologs file
alter database add standby logfile group {組號(hào)} ('standby redo logs file 1','logfiles2');

應(yīng)用日志

alter database recover managed standby database cancel ; 
startup mount; 
alter database open read only;
select open_mode,status,protection_level,protection_mode from v$database ;
--前臺(tái)應(yīng)用日志
alter database recover managed standby database ; 
-- 8 parallel 后臺(tái)應(yīng)用日志
alter database recover managed standby database parallel 8 disconnect from session;

檢查應(yīng)用日志的情況

檢查各個(gè)線程thread#的最大應(yīng)用日志的序列,與主庫(kù)進(jìn)行對(duì)比。

select thread#,max(sequence#) from v$archived_log where applied='YES' group by thread#;

墨天輪原文鏈接:https://www.modb.pro/db/46707

到此這篇關(guān)于Oracle DG 的歸檔缺失修復(fù)的文章就介紹到這了,更多相關(guān)Oracle DG 的歸檔缺失修復(fù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • oracle初始化參數(shù)設(shè)置

    oracle初始化參數(shù)設(shè)置

    oracle初始化參數(shù)設(shè)置...
    2007-03-03
  • ORACLE查詢刪除重復(fù)記錄三種方法

    ORACLE查詢刪除重復(fù)記錄三種方法

    本文列舉了3種刪除重復(fù)記錄的方法,分別是rowid、group by和distinct,小伙伴們可以參考一下。
    2016-05-05
  • Oracle導(dǎo)出導(dǎo)入表結(jié)構(gòu)操作實(shí)戰(zhàn)記錄

    Oracle導(dǎo)出導(dǎo)入表結(jié)構(gòu)操作實(shí)戰(zhàn)記錄

    在日常數(shù)據(jù)庫(kù)維護(hù)中,經(jīng)常會(huì)遇到導(dǎo)出數(shù)據(jù)表的需求,下面這篇文章主要給大家介紹了關(guān)于Oracle導(dǎo)出導(dǎo)入表結(jié)構(gòu)操作的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02
  • oracle 更改數(shù)據(jù)庫(kù)名的方法

    oracle 更改數(shù)據(jù)庫(kù)名的方法

    這兩天一朋友問(wèn)如何更改數(shù)據(jù)庫(kù)名,于是做個(gè)測(cè)試,簡(jiǎn)單記錄下,以便說(shuō)明問(wèn)題。
    2009-10-10
  • oracle下一條SQL語(yǔ)句的優(yōu)化過(guò)程(比較詳細(xì))

    oracle下一條SQL語(yǔ)句的優(yōu)化過(guò)程(比較詳細(xì))

    很簡(jiǎn)單的一次調(diào)整,語(yǔ)句加了適當(dāng)?shù)乃饕笮阅芫陀写蠓奶嵘?。?dāng)時(shí)看到這條語(yǔ)句的時(shí)候,第一感覺(jué)就是執(zhí)行效率肯定低下。語(yǔ)句的功能是求某一客戶當(dāng)天產(chǎn)品的總銷量。
    2010-04-04
  • Oracle集群 diagwait的問(wèn)題記錄

    Oracle集群 diagwait的問(wèn)題記錄

    這篇文章主要給大家介紹了關(guān)于Oracle集群diagwait的問(wèn)題的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • oracle代碼的常見(jiàn)錯(cuò)誤匯總

    oracle代碼的常見(jiàn)錯(cuò)誤匯總

    這篇文章主要介紹了oracle代碼的常見(jiàn)錯(cuò)誤,需要的朋友可以參考下
    2014-07-07
  • 12類Oracle日期函數(shù)超全面總結(jié)

    12類Oracle日期函數(shù)超全面總結(jié)

    日期時(shí)間函數(shù)用于處理時(shí)間類型的數(shù)據(jù),Oracle以7位數(shù)字格式來(lái)存放日期數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于12類Oracle日期函數(shù)超全面總結(jié)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Oracle 解決ORA-00257 Archiver error 報(bào)錯(cuò)問(wèn)題解決

    Oracle 解決ORA-00257 Archiver error 報(bào)錯(cuò)問(wèn)題解決

    訂單投資交易環(huán)境進(jìn)行 impdb 數(shù)據(jù)泵恢復(fù)數(shù)據(jù),執(zhí)行到一半,報(bào)錯(cuò)終止,歸檔策略保留時(shí)間較長(zhǎng),或歸檔頻率過(guò)高,導(dǎo)致數(shù)據(jù)庫(kù)掛載盤符空間不足,本文給大家分享Oracle 解決ORA-00257 Archiver error 報(bào)錯(cuò)問(wèn)題解決,感興趣的朋友一起看看吧
    2023-12-12
  • 教你一招怎樣查看Oracle中sid和service_name

    教你一招怎樣查看Oracle中sid和service_name

    Oracle的SID和Service?Name是數(shù)據(jù)庫(kù)中的兩個(gè)重要概念,下面這篇文章主要給大家介紹了關(guān)于如何查看Oracle的sid和service_name的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12

最新評(píng)論

铜陵市| 海宁市| 于田县| 广灵县| 亳州市| 佛冈县| 海盐县| 汉阴县| 临泉县| 全南县| 东光县| 洛宁县| 泰兴市| 夏邑县| 思茅市| 娄烦县| 台州市| 纳雍县| 延边| 东台市| 万山特区| 三河市| 宿迁市| 肥西县| 苏尼特左旗| 西昌市| 贞丰县| 河源市| 渭南市| 竹北市| 府谷县| 桂阳县| 宜春市| 南康市| 香河县| 修文县| 西充县| 宜黄县| 金秀| 鄯善县| 乡城县|