7 x 24 在线支持!
ORA -00704: ブートストラップ・プロセス障害 - 原因と解決策
ORACLEデータベース によくあるエラ の解決策
プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com
現象
アップグレード後、データベースオープン時に、下記のエラーで失敗します
ORA-00704: ブートストラップ・プロセス障害です
ORA-00604: 再帰SQLレベル 1 でエラーが発生しました
変更点
データベースのアップグレード
原因
1. サポートされていない操作でデータベースを強制的にオープンする時に、これらのエラーになる可能性があります。
2. このエラーはシステムのデータファイルにブロックが破損(ORA-1578)がある場合に発生することがあります。
3. ブートストラップ・オブジェクトが破損/欠落しています。
解決策
Oracleでは、ブートストラップはデータベースを OPEN する前のメタデータ(データ・ディクショナリ)のロードに関連しています。
ORA-00704 が下記のエラーを伴う場合
A) ORA-39700: データベースは、UPGRADEオプションを使用してオープンしてください
環境変数 ORACLE_HOME, PATH などが正しく設定されていることを確認した上で、catupgrd.sql を再実行します。
B) ORA-00942: 表またはビューがありません
特定のブートストラップ・オブジェクトが欠落している可能性があります。
1.Shutdown (abort)でインスタンスを停止し、インスタンスに使用されるすべてのOS構造体をクリーンアップします。
2.共有メモリやセマフォが存在する場合、クリーンアップします
下記コマンドを使用し、Oracleユーザーが所有する共有メモリー・セグメントおよびセマフォを削除します。
Unixのプロンプトに次のコマンドを実行します。
a) ipcs -m
これはoracleユーザーが所有するメモリー・セグメントを示します。 開始が失敗しているインスタンスに関連するOracleセグメントが存在する場合、削除します
> ipcrm -m <segment id number>
これで、メモリーからセグメントが削除され、Oracleはこの部分のメモリを保留しません
c) ipcs -s
セマフォの確認 - スタートおよび削除に失敗しているインスタンスのセグメントIDを取得します
>ipcrm -s <segment id number>
3.起動を再試行してください。
4.エラーが繰り返される場合は、アップグレード前に実施したバックアップからデータベースをリストアします。
C) ORA-01406: フェッチされた列の値は切り捨てられました
ブートストラップ・オブジェクトが破損している可能性があります。
アップグレードする前に取得したバックアップからデータベースをリストアします。
注意 エラーに付随するエラーが存在する場合は注意してください。