連載
» 2008年07月25日 00時00分 公開

Oracleインスタンスとデータベースの起動間違いやすいポイントを追え! Bronze DBA講座(5)(2/2 ページ)

[ゴールデンフォレスト株式会社,@IT]
前のページへ 1|2       

データベース起動時のエラー

例題3

データベースを起動したところ、エラーが発生しインスタンスが起動できませんでした。原因として考えられるのは次のうちどれでしょうか。正しいものを選択してください。

a.REDOログファイルの損失

b.初期化パラメータファイルの損失

c.制御ファイルの損失

d.データファイルの損失

例題の範囲をおさらい

参考:「Oracleインスタンスを管理する

 以下のファイルが破損しているとエラーが発生し、データベースを起動できません。

・初期化パラメータファイル

 初期化パラメータファイルは、NOMOUNT時に読み込まれ、SGAの割り当てとバックグラウンドプロセスの起動を行います。それによってインスタンスが起動されます。従って、初期化パラメータファイルが損失している場合、インスタンスの起動時にエラーとなります。

 初期化パラメータファイルが損失した状態で起動を行うと、以下のようなエラーになります。

(例)
SQL> startup
ORA-01078: システム・パラメータの処理に失敗しました。
ORA-01565: ファイル'初期化パラメータファルのパス'の識別中にエラーが発生しました。 ORA-27041: ファイルをオープンできません。
……

・制御ファイル

 制御ファイルは、MOUNT時にオープンされるファイルです。制御ファイルが損失している場合、インスタンスの起動は可能ですが、MOUNT時にエラーとなります。

 制御ファイルが損失した状態で起動を行うと、以下のようなエラーになります。

(例)
SQL> startup
ORACLEインスタンスが起動しました。
……

ORA-00205: 制御ファイル識別エラー。詳細はアラート・ログをチェックしてください。

・REDOログファイル、データファイル

 REDOログファイルおよびデータファイルは、OPEN時に読み込まれ、データベースがオープンし操作が可能になります。REDOログファイルまたはデータファイルが損失している場合、制御ファイル、REDOログファイル、データファイルの整合性が取れていない状態となります。従って、MOUNTは可能ですがデータベースのオープンができません。

 REDOログファイル、データファイルが損失した状態で起動を行うと、以下のようなエラーになります。

(例:REDOログファイルの場合)
SQL> startup
ORACLEインスタンスが起動しました。
……

データベースがマウントされました。

ORA-00313: ログ・グループ1(スレッド1)のメンバーをオープンできません。

ORA-00312: オンライン・ログ1 スレッド1: 'REDOログファイルのパス'

(例:データファイルの場合)
SQL> startup
ORACLEインスタンスが起動しました。
……

データベースがマウントされました。

ORA-01157: データファイル4を識別/ロックできません - DBWRトレース・ファイルを参照してください

ORA-01110: データファイル 4 : ‘データファイルのパス'

正解

b

解説

選択肢a:REDOログファイルが損失している場合、OPEN時にエラーとなりMOUNTまではできるため、インスタンスは起動できます。

選択肢b:初期化パラメータファイルが損失している場合、インスタンスの起動はできません。

選択肢c:制御ファイルが損失している場合、MOUNT時にエラーとなりNOMOUNTまではできるため、インスタンスは起動できます。

選択肢d:データファイルが損失している場合、OPEN時にエラーとなりMOUNTまではできるため、インスタンスは起動できます。

 よって、インスタンスが起動できない理由として考えられるのはbです。

まとめ

 次の内容をチェックしましょう。

  • インスタンスの起動、停止
  • データベース起動の順序
  • データベース起動時のエラー

 次回はデータベース記憶構造の管理について、間違えやすい点にポイントを絞って説明します。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。