[20220106]ora-00600 kokasgi1.txt
[20220106]ora-00600 kokasgi1.txt
--//上午看了的恢復,我前一陣子也幫別人做了1次恢
--//復。作者透過特殊手段啟動資料庫,然後修改SYSXX為原來SYS使用者。我仔細想想應該類似以前laoxiong的恢復。
--//自己在測試環境重複看看,千萬不能在生產系統做這樣操作!!
1.環境:
SCOTT@book> @ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
2.模擬:
SYS@book> select rowid ,name from user$ where name like 'SYS%';
ROWID NAME
------------------ ----------------------------------------
AAAAAKAABAAAADRAAB SYS
AAAAAKAABAAAADUAAL SYSMAN
AAAAAKAABAAAADRAAG SYSTEM
SYS@book> update user$ set name=name||'DW' where name in( 'SYS','SYSTEM');
2 rows updated.
SYS@book> commit ;
Commit complete.
SYS@book> shutdown immediate ;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS@book> startup
ORACLE instance started.
Total System Global Area 643084288 bytes
Fixed Size 2255872 bytes
Variable Size 205521920 bytes
Database Buffers 427819008 bytes
Redo Buffers 7487488 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00600: internal error code, arguments: [kokasgi1], [], [], [], [], [], [], [], [], [], [], []
Process ID: 27563
Session ID: 295 Serial number: 3
--//問題再現。
3.嘗試恢復:
--//重啟啟動到mount狀態。
SYS@book> startup mount
ORACLE instance started.
Total System Global Area 643084288 bytes
Fixed Size 2255872 bytes
Variable Size 205521920 bytes
Database Buffers 427819008 bytes
Redo Buffers 7487488 bytes
Database mounted.
$ ps -ef | grep LOCA[L]
oracle 27629 27581 0 17:10 ? 00:00:00 oraclebook (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
--//確定程式號27629
$ rlgdb -f -p 27629
GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-45.el5)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<
Attaching to process 27629
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/bin/oracle...(no debugging symbols found)...done.
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libodm11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libodm11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libcell11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libcell11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libskgxp11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libskgxp11.so
Reading symbols from /lib64/librt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/librt.so.1
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libnnz11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libnnz11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libclsra11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libclsra11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libdbcfg11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libdbcfg11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libhasgen11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libhasgen11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libskgxn2.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libskgxn2.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocr11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocr11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocrb11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocrb11.so
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocrutl11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libocrutl11.so
Reading symbols from /usr/lib64/libaio.so.1...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libaio.so.1
Reading symbols from /lib64/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libm.so.6
Reading symbols from /lib64/libpthread.so.0...(no debugging symbols found)...done.
[Thread debugging using libthread_db enabled]
Loaded symbols for /lib64/libpthread.so.0
Reading symbols from /lib64/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libnsl.so.1
Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib64/libnuma.so.1...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libnuma.so.1
Reading symbols from /lib64/libnss_files.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libnss_files.so.2
Reading symbols from /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libnque11.so...(no debugging symbols found)...done.
Loaded symbols for /u01/app/oracle/product/11.2.0.4/dbhome_1/lib/libnque11.so
0x000000379a00da70 in __read_nocancel () from /lib64/libpthread.so.0
(gdb) break kokiasg
Breakpoint 1 at 0x15037a0
--//注意是kokiasg,沒有1.
SYS@book> alter database open ;
--//掛起,回到gdb介面執行:
(gdb) c
Continuing.
Breakpoint 1, 0x00000000015037a0 in kokiasg ()
--//程式已經執行到斷點,另外開啟一個會話。
SYS@book> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE
--//OK,現在已經在讀寫狀態,可以執行dml語句修改回來了。
SYS@book> update user$ set name='SYS' where name = 'SYSDW';
1 row updated.
SYS@book> update user$ set name='SYSTEM' where name = 'SYSTEMDW';
1 row updated.
SYS@book> commit ;
Commit complete.
SYS@book> alter system checkpoint ;
System altered.
SYS@book> alter system checkpoint ;
System altered.
--//回到gdb介面:
Breakpoint 1, 0x00000000015037a0 in kokiasg ()
(gdb) c
Continuing.
--//回到掛起的會話介面檢視,已經執行完成。
SYS@book> alter database open ;
Database altered.
SYS@book> startup
ORACLE instance started.
Total System Global Area 643084288 bytes
Fixed Size 2255872 bytes
Variable Size 205521920 bytes
Database Buffers 427819008 bytes
Redo Buffers 7487488 bytes
Database mounted.
Database opened.
SYS@book> select rowid ,name from user$ where name like 'SYS%';
ROWID NAME
------------------ ----------------------------------------
AAAAAKAABAAAADRAAB SYS
AAAAAKAABAAAADUAAL SYSMAN
AAAAAKAABAAAADRAAG SYSTEM
--//這樣恢復簡單,以前的恢復使用bbed太麻煩了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2851025/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORA-00600 [925]
- ORA-00600[KZSRGPW]
- ORA-00600 kcratr_nab_less_than_odr ORA-00600 [4194]
- ORA-00600: [qksdsInitSample:2]
- ORA-00600: [OSDEP_INTERNAL]
- EXP時遭遇ORA-00600 [729]
- ORA-00600 [729], [12284], [space leak],
- [20230108]ORA-00600 and Session Disconnected.txtSession
- ORA-00600 kcrf_resilver_log_1CRF
- ORA-00600: internal error code, arguments: [13011]Error
- Oracle recover current redo ORA-00600:[4193] (oracle 故障恢復current redo日誌ORA-00600:[4193]報錯)Oracle
- [20230108]ORA-00600 and Session Disconnected 2.txtSession
- ORACLE ONLINE PATCH & ORA-00600[kcbgtcr_13]Oracle
- ORA-00600[kluinit:new add column in directpath 2]UI
- ORA-00600: internal error code, arguments: [qosdExpStatRead: expcnt mismatch], [Error
- ORA-00600: internal error code, arguments: [2131], [9], [8]Error
- [20181106]模擬ora-00600[4194]錯誤.txt
- [20181204]模擬ora-00600[4194]錯誤.txt
- [20181204]模擬ora-00600[4193]錯誤.txt
- ORA-00600: internal error code, arguments: [knacpft_ProcessFetchedTxns250]Error
- 案例ORA-00600: internal error code, arguments: [qkaffsindex3], [], [], [], []ErrorIndex
- ORA-00600: internal error code, arguments: [13013], [5001], [267], [8389014]Error
- Oracle索引修復 ,ORA-00600: internal error code, arguments: [6200],Oracle索引Error
- 系統crash掉導致ORA-00600的處理
- [20181105]ORA-00600[4000] 模擬故障(10g).txt
- ora-00600兩個子錯誤733, 6006解決
- 資料庫啟動遭遇ORA-00600: [keltnfy-ldmInit]資料庫
- ORA-00600: 內部錯誤程式碼, 引數: [19004]
- 邏輯STANDBY上的ORA-00600: internal error code, arguments: [krvtadc], [], [], [], [], []Error
- 遭遇ORA-00600: internal error code, arguments: [kcrrrfswda.11], [4], [368], [], [], [], [], []Error
- 一個特殊的ORA-00600: internal error code, arguments: [6302], [20], [], [], [], [], [], []Error
- ORA-00600: internal error code, arguments: [kzsrsea] DataGuard環境的異常Error
- ORA-00600: 內部錯誤程式碼, 引數: [kcbnew_3]
- ORA-00600: 內部錯誤程式碼, 引數: [qcisSetPlsqlCtx:tzi init]SQL
- 如何查詢ORA-07445 ORA-00600錯誤相關資訊
- ORA-00600: 內部錯誤程式碼, 引數: [kcbchg1_14]
- insert變數太多導致例項重啟ORA-00600、ORA-01006變數
- 【BUG】ORA-00600 [17147] ORA-48216 When Querying V$DIAG_ALERT_EXT ViewView