積み替え-破損したシステム管理の元に戻すセグメントを修正

破損の処理に関する追加情報, を参照してください 汚職に関するBC専門家のメモ そして

MOSCノートを参照してください 1088018.1 – Oracleデータベースの破損の問題の処理.

修正方法もご覧ください ログの破損を元に戻す (今-00375) _undo_log_corruptionを使用

OracleおよびOracleのそれ以降のリリースでは、古いロールバックセグメントがに置き換えられました

セグメントを元に戻し、ほとんどの場合, 自動的にサイズ設定および管理されるようになりました. しかしながら,

これらのシステムで作成および管理された元に戻すセグメントの1つが破損するとどうなりますか?

上手, 一つには、次のようなエラーがアラートログに記録されます。:

ファイル/oracle/admin/test/bdump/test2_smon_21466.trcのエラー:

今-00600: 内部エラーコード, 引数: [6006], [1], [], [], [], [], [], []

スモン: 元に戻すセグメントをマークする 29 回復が必要な場合

ORACLEインスタンスtest2 (pid = 11) – エラー 600 トランザクションの回復中に発生しました

(29, 42) オブジェクト上 36.

(これは同じ元に戻すセグメントを表示することに注意してください, トランザクション, 毎回オブジェクト番号

それが発生します, 元に戻すセグメントとトランザクション番号が異なる場合, 次に、問題はオブジェクトにあります

表示された番号)

実際には, あなたはこれらの多くを何度も何度も得るかもしれません.

そう, あなたはこれについて何ができますか?

ALTER ROLLBACK SEGMENTコマンドを使用して元に戻すセグメントを変更しようとすると、

これはシステム管理されており、次のことができることを不確かな言葉で伝えられることはありません?変更する.

そう, これがあなたがする必要があることです:

新しいシステム管理UNDO表領域を作成します:

接続する / sysdbaとして

undoテーブルスペースundotbs2データファイルを作成します “/u02 / oracle / oradata / test / undotbs2.dbf”

サイズ500m;

問題のある元に戻すセグメントを特定する:

segment_nameを選択します, dba_rollback_segsからのステータス;

 

問題のあるセグメントには、 ?回復が必要? 状態.

新しいUNDO表領域を使用するようにシステムを変更します:

システムセットの変更undo_tablespace = undotbs2 scope = both;

(spfileを使用していない場合は注意してください, scopeコマンドを省略します)

spfileを使用している場合, それからpfileを作成します:

接続する / sysdbaとして

pfile =を作成します”/u01 / oracle / admin / test / pfile / inittest.ora” spfileから;

inittest.ora pfileを編集して、追加します (サンプルエラーの元に戻すセグメントを使用する):

*._offline_rollback_segments =? _SYSSMU29 $?

*._corrupt_rollback_segments =?_SYSSMU29 $?

次に、インスタンスをシャットダウンします, これにはシャットダウンの中止が必要な場合があります, ただし、最初にすぐにシャットダウンしてみてください.

手動起動コマンドを使用した起動:

起動pfile =”/u01 / oacle / admin / test / pfile = inittest.ora”

古いUNDO表領域をオフラインに変更する:

表領域undotbs1をオフラインに変更;

問題のあるテーブルスペースを削除します:

コンテンツとデータファイルを含むテーブルスペースundotbs1を削除します;

すぐにシャットダウンする.

inittest.oraファイルを編集して、アンダースコアパラメータを削除します.

pfileオプションを使用してインスタンスを再起動します.

pfileからspfileを作成します:

pfile =からspfileを作成します”/u01 / oracle / admin / test / pfile / inittest.ora”;

ワンステップ 13 データベースは正常に稼働している必要があります. しかしながら, それは賢明かもしれません

完全バックアップを実行してから、エクスポートとインポートを使用して再構築します. 元に戻す必要があったので

いくつかのアクティブなトランザクションがデータベースに適用されていない可能性があるセグメントは、完全に適用されていない可能性があります

一貫性がある.

返信を残します