7 x 24 在线支持!
Oracle データベースのリカバリ後のエラーORA-600[kclchkblk_4]およびORA-600[2662]
ORACLEデータベース によくあるエラ の解決策
プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com
本ドキュメント内の情報の適用先:
Oracle Server - Enterprise Edition - Version: 10.1までのバージョン
この問題はあらゆるプラットフォームで発生する可能性があります。
エラー
ORA-00600 [kclchkblk_4]
ORA-00600 [2662]
現象
1) データベースをバックアップからリストアし、不完全リカバリを実行した。
2) resetlogを指定してデータベースをオープンした。
3) データベースのオープン後、次のエラーが発生しはじめる。
ORA-00600 [kclchkblk_4]
ORA-00600 [2662]
4) スタック・トレース:- kclchkblk kcbzib kcbgcur ktfbhget ktftfcload
原因
1) 一時ファイルブロックのSCNが高すぎるため、エラーORA-600[KCLCHKBLK_4]が発生する。
同じ理由により、アラート・ログにORA-600[2662]が発生する。
2) この問題は、resetlogを指定してデータベースをオープンする際に、一時ファイルの
再初期化が行われないためです。
解決
1) まず、データベース内で一時ファイルを検索します。
SQL> select file_name, file_id from dba_temp_files;
2) 一旦データベースを停止のうえ、データベースを Startup mountします。
SQL> startup mount
3) すべての一時ファイルを削除します。
SQL> alter database tempfile '一時ファイル名' drop;
4) データベースをOPENします。
SQL> alter database open;
5) 新しい一時ファイルを追加します。
SQL> alter tablespace <表領域名> add tempfile '一時ファイル名(フルパス)' size <サイズを指定>;
6) インスタンスを再起動します。