Oracle 不完全恢復遇到的ORA-600錯誤
一個resetlogs恢復表的場景:
場景描述:
資料正常執行,由於表B丟失,此時進行一次不完全恢復,不完全恢復至scn1067392,然後進行open resetlogs開啟,此時開啟了一個新的化身線,在剛開啟後,又誤刪除了表A,此時想要恢復表A,將表A再次恢復至scn1067392,將表A進行恢復。
進行一次全備:
[oracle@server1 ~]$ rman target /RMAN> backup as compressed backupset database;
檢視資料庫當前化身線:
RMAN> list incarnationusing target database control file instead of recovery catalogList of Database IncarnationsDB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time------- ------- -------- ---------------- --- ---------- ----------1 1 PROD 457994418 PARENT 1 24-AUG-132 2 PROD 457994418 CURRENT 925702 19-JUL-20
建立兩張表(A和B):
SQL> create table A as select * from dba_objects;Table created.SQL> insert into A select * from A;86958 rows created.SQL> create table B as select * from dba_objects;Table created.SQL> insert into B select * from B;86958 rows created.**進行幾次日誌切換:**SQL> alter system switch logfile;
檢視當前SCN:
SQL> select current_scn from v$database;CURRENT_SCN 1067392
清空表B資料:
SQL> truncate table B;Table truncated.
使用RMAN進行不完全恢復至1067392,將表B恢復:
啟動到mount狀態進行恢復RMAN> restore database;RMAN> recover database until scn 1067392;SQL> alter database open resetlogs;Database altered.SQL> select count(*) from B; COUNT(*) 173914
檢視當前化身:
RMAN> list incarnation;using target database control file instead of recovery catalogList of Database IncarnationsDB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time------- ------- -------- ---------------- --- ---------- ----------1 1 PROD 457994418 PARENT 1 24-AUG-132 2 PROD 457994418 PARENT 925702 19-JUL-203 3 PROD 457994418 CURRENT 1067393 21-AUG-20**記錄一下Open resetlogs後的當前SCN:**SQL> select current_scn from v$database;CURRENT_SCN 1067920(和上面化身線的點還是很大距離的)**此時剛進行不完全恢復open resetlogs開啟後,我又把表A刪了:**SQL> truncate table A;Table truncated.
此時可以不完全恢復至 1067920,恢復表A
但是我嘗試再次恢復至SCN1067392,出現ORA-600錯誤:
(多次測試,恢復至與上一樣不完全恢復相同的SCN是必報的錯誤)
指定化身線2:
RMAN> reset database to incarnation 2;RMAN> restore database;RMAN> recover database until scn 1067392;SQL> alter database open resetlogs;alter database open resetlogs*ERROR at line 1:ORA-01092: ORACLE instance terminated. Disconnection forcedORA-00600: internal error code, arguments: [2898], [5], [12], [], [], [], [],[], [], [], [], []Process ID: 3633Session ID: 191 Serial number: 13
後臺警告日誌:
Checker run found 2 new persistent data failures ARC3: Archival startedARC0: STARTING ARCH PROCESSES COMPLETEerror 25319 happened during Queue table repartitioningStarting background process QMNCFri Aug 21 07:23:45 2020QMNC started with pid=27, OS id=3364 LOGSTDBY: Validating controlfile with logical metadataLOGSTDBY: Validation completeFri Aug 21 07:23:45 2020error 376 happened for queue:IX.STREAMS_QUEUE_TABLE during timed actCompleted: alter database openFri Aug 21 07:23:45 2020Dumping diagnostic data in directory=[cdmp_20200821072345], requested by (instance=1, osid=3342), summary=[incident=12166].Errors in file /oracle/app/diag/rdbms/prod/prod/trace/prod_mmon_3322.trc (incident=12134):ORA-25319: Queue table repartitioning abortedIncident details in: /oracle/app/diag/rdbms/prod/prod/incident/incdir_12134/prod_mmon_3322_i12134.trcerror 25319 happened during Queue table repartitioningerror 376 happened for queue:IX.STREAMS_QUEUE_TABLE during timed actErrors in file /oracle/app/diag/rdbms/prod/prod/trace/prod_mmon_3322.trc (incident=12135):ORA-25319: Queue table repartitioning abortedIncident details in: /oracle/app/diag/rdbms/prod/prod/incident/incdir_12135/prod_mmon_3322_i12135.trcDumping diagnostic data in directory=[cdmp_20200821072347], requested by (instance=1, osid=3322 (MMON)), summary=[incident=12134].error 25319 happened during Queue table repartitioningerror 376 happened for queue:IX.STREAMS_QUEUE_TABLE during timed actErrors in file /oracle/app/diag/rdbms/prod/prod/trace/prod_mmon_3322.trc (incident=12136):ORA-25319: Queue table repartitioning abortedIncident details in: /oracle/app/diag/rdbms/prod/prod/incident/incdir_12136/prod_mmon_3322_i12136.trcDumping diagnostic data in directory=[cdmp_20200821072348], requested by (instance=1, osid=3322 (MMON)), summary=[incident=12135].error 25319 happened during Queue table repartitioning
使用RMAN啟動到mount狀態,檢視一下當前化身
[oracle@server1 ~]$ rman target /Recovery Manager: Release 11.2.0.4.0 - Production on Fri Aug 21 02:08:55 2020Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.connected to target database (not started)RMAN> startup mount;Oracle instance starteddatabase mountedTotal System Global Area 830930944 bytesFixed Size 2257800 bytesVariable Size 541068408 bytesDatabase Buffers 281018368 bytesRedo Buffers 6586368 bytesRMAN> list incarnation;using target database control file instead of recovery catalogList of Database IncarnationsDB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time------- ------- -------- ---------------- --- ---------- ----------1 1 PROD 457994418 PARENT 1 24-AUG-132 2 PROD 457994418 PARENT 925702 19-JUL-203 3 PROD 457994418 ORPHAN 1067393 21-AUG-204 4 PROD 457994418 CURRENT 1067393 21-AUG-20**顯示當前已經出現一個分支。**
嘗試直接Open
[oracle@server1 ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Fri Aug 21 02:11:03 2020Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> alter database open;Database altered.SQL> select count(*) from A; COUNT(*) 173914
可以開啟,資料存在
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69976940/viewspace-2714040/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 不完全恢復Oracle
- oracle日誌錯誤恢復(轉)Oracle
- oracle實驗記錄 (恢復-不完全恢復)Oracle
- oracle基於scn的不完全恢復Oracle
- 利用日誌挖掘 oracle 不完全恢復 恢復誤刪除的表/資料/檢視等Oracle
- oracle資料庫不完全恢復Oracle資料庫
- 遇到 ORACLE 錯誤 6550Oracle
- Oracle Rman 資料庫的不完全恢復Oracle資料庫
- Oracle 11g 手工不完全恢復Oracle
- Oracle 11g 手工不完全恢復 場景1:被動的不完全恢復(日誌缺失)Oracle
- oracle基於時間點的不完全恢復Oracle
- 記錄一次ORACLE的不完全恢復Oracle
- [裝載]oracle 無歸檔的不完全恢復Oracle
- 【Mysql】完全恢復與不完全恢復MySql
- 【備份與恢復】控制檔案的恢復(不完全恢復)
- 恢復MySQL資料庫建立儲存過程是遇到錯誤MySql資料庫儲存過程
- oracle 基於使用者管理的不完全恢復Oracle
- ORA-600(kffmXpGet)錯誤
- oracle 10.2.0.5 平臺上ORA-600錯誤Oracle
- Oracle 基於 RMAN 的不完全恢復(incomplete recovery by RMAN)Oracle
- Oracle冷備份級冷備份的不完全恢復Oracle
- Oracle恢復誤刪資料Oracle
- 深入理解 HDFS 錯誤恢復
- Oracle恢復誤操作刪除掉的表Oracle
- 【備份與恢復】使用Flashback Database(不完全恢復)Database
- RMAN全庫【完全恢復/不完全恢復brief version】
- 如何進行Oracle資料庫不完全恢復RBOracle資料庫
- ORACLE資料庫基於時間點的不完全恢復Oracle資料庫
- Oracle中使用者管理的不完全恢復簡介(轉)Oracle
- 資料庫不完全恢復。資料庫
- 資料庫不完全恢復資料庫
- MySQL兩種不完全恢復的方法MySql
- oracle恢復誤刪除資料Oracle
- oracle ora-600[2662]問題分析及異常恢復Oracle
- 一個錯誤的資料檔案的恢復
- IMP-00058: 遇到 ORACLE 錯誤 1691Oracle
- Oracle手工不完全恢復(一):使用當前控制檔案Oracle
- Oracle手工不完全恢復(二):使用備份控制檔案Oracle