在DG備庫備份資料庫並恢復到一個主機上,報錯RMAN-06820
在DG備庫備份資料庫並恢復到一個主機上,報錯RMAN-06820
12C dataguard備庫備份archivelog出現報錯
Problem Description
---------------------------------------------------
SQL> select * from product_component_version ;
PRODUCT VERSION STATUS
---------------------------------------- ---------- ----------------------------------------
NLSRTL 12.1.0.2.0 Production
Oracle Database 12c Enterprise Edition 12.1.0.2.0 64bit Production
PL/SQL 12.1.0.2.0 Production
TNS for Linux: 12.1.0.2.0 Production
備庫的狀態
SQL> select OPEN_MODE,PROTECTION_MODE,DATABASE_ROLE from v$database;
OPEN_MODE PROTECTION_MODE DATABASE_ROLE
-------------------- -------------------- ----------------
READ ONLY WITH APPLY MAXIMUM PERFORMANCE PHYSICAL STANDBY
SQL> select THREAD# ,SEQUENCE#,APPLIED from v$archived_log where APPLIED='NO' ;
no rows selected
在standby(備庫)備份archivelog時會報RMAN-06820,ORA-17629,ORA-17627的錯,但是最後歸檔還是備份成功了。
[oracle@localhost ~]$rman target /
RMAN> backup archivelog all;
Starting backup at 02-OCT-15
using target database control file instead of recovery catalog
RMAN-06820: WARNING: failed to archive current log at primary database
ORACLE error from target database:
ORA-17629: Cannot connect to the remote database server
ORA-17627: ORA-00942: table or view does not exist
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1156 device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=2 sequence=132 RECID=135 STAMP=891367439
input archived log thread=1 sequence=172 RECID=134 STAMP=891367438
......
piece handle=/opt/oracle/oradata/MXCNSTB/backupset/2015_10_02/o1_mf_annnn_TAG20151002T144942_c0wbbdw1_.bkp tag=TAG20151002T144942 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07
Finished backup at 02-OCT-15
解決方法:
在備庫上以sys使用者登入
rman target sys/password
可以參考以下文件:
RMAN-06820 ORA-17629 ORA-17627 ORA-01034 ORA-27101 During Backup of a Standby Database ( Doc ID 2042148.1 )
RMAN-06820 ORA-17629 During Backup at Standby Site ( Doc ID 1616074.1 )
RMAN-06820 ORA-17629 ORA-12154 During Backup of a Standby Database ( Doc ID 2025142.1 )
Dataguard Standby備份報錯RMAN-06820 ORA-17629解決
Oracle Dataguard 是官方重要HA 架構的組成部分。通過只讀的Standby 資料庫,可以在確保高可用的基礎上,將一部分報表、備份負載從主庫上分離出來,提高主庫效能。
根據Oracle 最佳實踐,主庫Primary 是可以不進行直接的備份,核心備份操作可以放在Standby 端進行操作,這樣不僅可以節省備份資源,還可以有效的將備份的效能消耗轉移到Standby 端進行。
本文記錄了筆者在Physical Standby 端進行RMAN 備份的時候,遇到錯誤資訊的問題解決。記錄下來,留待需要的朋友待查。
1 、環境說明
筆者使用Oracle 11gR2 進行測試,具體版本為11.2.0.4 。Data Guard Primary 和Standby 採用的版本完全相同。
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE 11.2.0.4.0 Production
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 – Production
在Standby 端,是採用Active Data Guard 只讀應用狀態。
SQL> select open_mode, database_role from v$database;
OPEN_MODE DATABASE_ROLE
-------------------- ----------------
READ ONLY WITH APPLY PHYSICAL STANDBY
2 、問題故障
在standby 端,使用RMAN 進行備份動作。進行全庫備份和歸檔日誌備份,備份之後嘗試刪除掉已經備份的日誌檔案。
[oracle@vLIFE-URE-OT-DB-STANDBY trace]$ rman nocatalog
Recovery Manager: Release 11.2.0.4.0 - Production on Sun Oct 18 13:44:54 2015
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
RMAN> connect target /
connected to target database: VLIFE (DBID=4207470439)
using target database control file instead of recovery catalog
進行RMAN 備份。
RMAN> backup database plus archivelog delete input;
Starting backup at 18-OCT-15
RMAN-06820: WARNING: failed to archive current log at primary database
ORACLE error from target database:
ORA-17629: Cannot connect to the remote database server
ORA-17627: ORA-00942: table or view does not exist
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=204 device type=DISK
specification does not match any archived log in the repository
backup cancelled because there are no files to backup
Finished backup at 18-OCT-15
Starting backup at 18-OCT-15
(篇幅原因,有省略 …… )
handle=/u01/app/oracle/fast_recovery_area/VLIFESB/autobackup/2015_10_18/o1_mf_s_893423697_c26dj5nb_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 18-OCT-15
在備份過程中出現錯誤,錯誤提示上好像是要訪問Primary 端資料庫,之後由於許可權問題沒有能夠訪問。其他備份動作看似正常,備份集合顯示正確。
RMAN> list backup;
List of Backup Sets
===================
BS Key Size Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
6 27.46M DISK 00:00:00 18-OCT-15
BP Key: 7 Status: AVAILABLE Compressed: NO Tag: TAG20151018T133946
Piece Name: /u01/app/oracle/fast_recovery_area/VLIFESB/backupset/2015_10_18/o1_mf_annnn_TAG20151018T133946_c26d52kd_.bkp
List of Archived Logs in backup set 6
Thrd Seq Low SCN Low Time Next SCN Next Time
---- ------- ---------- --------- ---------- ---------
1 22 1290925 18-OCT-15 1298642 18-OCT-15
1 23 1298642 18-OCT-15 1298901 18-OCT-15
1 24 1298901 18-OCT-15 1299107 18-OCT-15
1 25 1299107 18-OCT-15 1299528 18-OCT-15
1 26 1299528 18-OCT-15 1301585 18-OCT-15
1 27 1301585 18-OCT-15 1301853 18-OCT-15
1 28 1301853 18-OCT-15 1302226 18-OCT-15
1 29 1302226 18-OCT-15 1303310 18-OCT-15
1 30 1303310 18-OCT-15 1303858 18-OCT-15
1 31 1303858 18-OCT-15 1308314 18-OCT-15
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
11 Full 1.11G DISK 00:00:08 18-OCT-15
BP Key: 12 Status: AVAILABLE Compressed: NO Tag: TAG20151018T134526
Piece Name: /u01/app/oracle/fast_recovery_area/VLIFESB/backupset/2015_10_18/o1_mf_nnndf_TAG20151018T134526_c26dhpdf_.bkp
List of Datafiles in backup set 11
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 1308778 18-OCT-15 /u01/app/oracle/oradata/VLIFESB/datafile/o1_mf_system_c2613wz5_.dbf
2 Full 1308778 18-OCT-15 /u01/app/oracle/oradata/VLIFESB/datafile/o1_mf_sysaux_c2613x03_.dbf
3 Full 1308778 18-OCT-15 /u01/app/oracle/oradata/VLIFESB/datafile/o1_mf_undotbs1_c2613x07_.dbf
4 Full 1308778 18-OCT-15 /u01/app/oracle/oradata/VLIFESB/datafile/o1_mf_users_c2613x0d_.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
12 Full 9.36M DISK 00:00:00 18-OCT-15
BP Key: 13 Status: AVAILABLE Compressed: NO Tag: TAG20151018T134541
Piece Name: /u01/app/oracle/fast_recovery_area/VLIFESB/autobackup/2015_10_18/o1_mf_s_893423697_c26dj5nb_.bkp
SPFILE Included: Modification time: 18-OCT-15
SPFILE db_unique_name: VLIFESB
Standby Control File Included: Ckp SCN: 1310511 Ckp time: 18-OCT-15
3 、問題分析解決
這個問題很不合理,看似應該是Oracle Bug 之類的情況。查詢MOS ,發現了對應的Bug 資訊:RMAN-06820 ORA-17629 During Backup at Standby Site ( 文件 ID 1616074.1) 。
根據文章資訊,該問題Oracle 一個未釋出的bug ,編號為Bug 8740124 。當Oracle 嘗試訪問主庫過程中,需要連帶將全部的standby log 獲取到。當連線失敗的時候,就會發生報錯。
要解決該問題,Oracle 提供了一個變通的辦法,就是不要使用target / 匿名方式登入,而是使用sysdba 使用者的使用者名稱和密碼資訊進行直接連線。
實驗如下:
[oracle@vLIFE-URE-OT-DB-STANDBY trace]$ rman nocatalog
Recovery Manager: Release 11.2.0.4.0 - Production on Sun Oct 18 13:49:56 2015
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
RMAN> connect target sys/oracle@vlifesb
connected to target database: VLIFE (DBID=4207470439)
using target database control file instead of recovery catalog
RMAN> backup database plus archivelog delete input;
Starting backup at 18-OCT-15
current log archived at primary database
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=204 device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
(篇幅原因,有省略 …… )
handle=/u01/app/oracle/fast_recovery_area/VLIFESB/autobackup/2015_10_18/o1_mf_s_893425827_c26dssbt_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 18-OCT-15
沒有出現報錯資訊,問題解決。
4 、結論
筆者思考一下,這個變通策略還是利用了主庫和備庫在sysdba 使用者的密碼相同這個策略。在備份的時候,將顯示記錄的sysdba 使用者密碼輸入進去,用於進行遠端Primary 登入和獲取。
RMAN-06820 ORA-17629 During Backup at Standby Site (Doc ID 1616074.1) | To Bottom |
RMAN-06820 ORA-17629 ORA-12154 During Backup of a Standby Database (Doc ID 2025142.1) | To Bottom |
About Me
........................................................................................................................ ● 本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除 ● 本文在個人微 信公眾號( DB寶)上有同步更新 ● QQ群號: 230161599 、618766405,微信群私聊 ● 個人QQ號(646634621),微 訊號(db_bao),註明新增緣由 ● 於 2020年7月 在西安完成 ● 最新修改時間:2020年7月 ● 版權所有,歡迎分享本文,轉載請保留出處 ........................................................................................................................ ● 小麥苗的微店: https://weidian.com/s/793741433?wfr=c&ifr=shopdetail ● 小麥苗出版的資料庫類叢書: http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麥苗OCP、OCM、高可用、DBA學習班: http://blog.itpub.net/26736162/viewspace-2148098/ ● 資料庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ........................................................................................................................ 請掃描下面的二維碼來關注小麥苗的微 信公眾號( DB寶)及QQ群(230161599、618766405)、新增小麥苗微 信(db_bao), 學習最實用的資料庫技術。
........................................................................................................................ |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2707187/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE DG從庫 Rman備份恢復Oracle
- 資料庫備份恢復資料庫
- 備份與恢復:polardb資料庫備份與恢復資料庫
- 【RMAN】在備庫執行rman備份時報錯RMAN-06820 ORA-17629
- Mysql資料庫備份及恢復MySql資料庫
- 達夢資料庫備份恢復資料庫
- postgresql備份與恢復資料庫SQL資料庫
- 資料庫備份與恢復技術資料庫
- Mongo 資料庫備份和恢復命令Go資料庫
- pg_dump 備份,恢復資料庫資料庫
- PostgreSql資料庫的備份和恢復SQL資料庫
- ClickHouse資料庫單機安裝及備份恢復資料庫
- SqlServer資料庫恢復備份資料的方法SQLServer資料庫
- mongodb資料庫備份與恢復(資料庫資料遷移)MongoDB資料庫
- vivo 資料庫備份恢復系統演化資料庫
- 使用Mysqldump備份和恢復MySQL資料庫MySql資料庫
- MySQL-19.資料庫備份與恢復MySql資料庫
- PG-pg_dump備份/恢復資料庫資料庫
- Polardb資料庫掛庫後,如何恢復主備關係資料庫
- 在Linux中,如何備份一個資料庫?Linux資料庫
- 康孚備份資料庫時報錯資料庫
- RMAN備份恢復典型案例——資料庫卡頓資料庫
- Linux下MySQL資料庫的備份與恢復LinuxMySql資料庫
- NoSQL 資料庫案例實戰 -- MongoDB資料備份、恢復SQL資料庫MongoDB
- 備份與恢復:Polardb資料庫資料基於時間點恢復資料庫
- 資料庫資料恢復—無備份,binlog未開啟的Mysql資料庫資料恢復案例資料庫資料恢復MySql
- 用增量備份來快速恢復dg
- 時序資料庫InfluxDB之備份和恢復策略資料庫UX
- 時序資料庫 InfluxDB 之備份和恢復策略資料庫UX
- Dedecms資料庫恢復與備份的兩種方法資料庫
- 淺談達夢資料庫的備份與恢復資料庫
- Oracle資料庫冷備和恢復Oracle資料庫
- windows下使用mysqldump備份資料庫並上傳到阿里雲OSSWindowsMySql資料庫阿里
- 利用innobackupex備份集恢復指定庫
- 將RAC備份集恢復為單例項資料庫單例資料庫
- mysqldump使用方法(MySQL資料庫的備份與恢復)MySql資料庫
- 備份mysql資料庫報告MySql資料庫
- 資料庫備份資料庫