迷子系ITブログ

方向音痴の体現者によるIT系のブログ。ホワイト企業、探してます。流されるままIT業界の闇に足を突っ込んで迷子になりました。

【学習】#2 Oracle Database インスタンス [Oracle database Silver 12c (1Z0-062)]

 

Oracle database Silver 12c (1Z0-062)のに関する学習用の連載記事です。

短文を意識して簡易的にまとめているので参考程度にお読みください。

 

関連リンク

【学習】#0 前書き [Oracle database Silver 12c (1Z0-062)]

【学習】#1 アーキテクチャの確認 / 確認ツール [Oracle database Silver 12c (1Z0-062)]

 

 

目次

 

 

確認事項

本記事は以下についてまとめています。

 

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

- パラメータ変更

- 制限モード

- DDLロギング

- アラートログファイル

- インスタンスの起動

- インスタンスの停止モード

 

理解している項目は飛ばして頂いて構いません。

効率よく進めていきましょう。

 

 

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

初期化パラメータファイルには以下の2種類があります。

- PFILE(テキスト)

- SPFILE(バイナリ)

 

ALTER SYSTEMでSCOPE句を指定した場合、現行インスタンスのみ反映されます。*1

 

PFILE

テキストファイルです。

編集はエディタで行います。

現行インスタンスへの反映には再起動が必要です。

SCOPEの指定がない場合、SCOPEはデフォルトでMEMORYとなります。*2

 

SPFILE

バイナリファイルです。

編集はALTER SYSTEMコマンドで行います。

現行インスタンスへの反映には即時行われます。*3

SCOPEの指定がない場合、SCOPEはデフォルトでSPFILEとなります。

 

  

パラメータ変更

パラメータは大きく分けて2種類あります。

 

パラメータ種別 説明
静的パラメータ

現行インスタンスの値は変更不可。初期化パラメータファイルのみ変更可能。変更を反映するには再起動が必要。

動的パラメータ 現行インスタンスの値は変更可能。セッションレベルでの設定が可能。システムレベルとセッションレベルそれぞれで変更できるパラメータがある。

※静的パラメータのほうが少ないため静的パラメータを中心に覚えることをオススメします。

 

ここでは静的パラメータの一部だけ取り上げておきます。

SGAに関する静的パラメータは頻出ですので覚えておきましょう。

パラメータ種別 説明
AUDIT_TRAIL データベース監査の使用
AUDIT_FILE_DEST 監査証跡が保存されるOSのディレクトリパス
LOG_BUFFER REDOログバッファのサイズ
MEMORY_MAX_TARGET 初期化パラメータの最大メモリサイズ
SGA_MAX_SIZE インスタンス起動中の最大SGAサイズ
UNDO_MANAGEMENT UNDO領域管理モード

 

 

制限モード

エクスポート、インポート、移行などを行う際、一般ユーザーの新規接続を制限するために使用されます。

 

ALTER SYSTEM ENABLE RESTRICTED SESSION;

新規接続を制限するシステム変更コマンドです。

すでに接続しているユーザーには影響しません。

接続済みのユーザーは新規セッションを開始することができます。

 

 

DDLロギング

DDLログファイルは次の初期化パラメータによって管理されています。

 

ENABLE_DDL_LOGGING*4

このパラメータをTRUEに設定することでロギング対象のDDLADR(自動診断リポジトリ)のDDLログに記録されます。*5

 

 

アラートログファイル

アラートログファイルはメッセージとエラーの時系列ログファイルです。

アラートログファイル*6はデータベースが含まれるサーバー上にあり、デフォルトで"$ORACLE_BASE/diag/rdbms/DB名/SID/trace"に格納されます。

 

アラートログの主な記録内容

アラートログファイルに書き出される主な内容は以下の通りです。

 - 起動時に使用されたデフォルト以外のパラメータ

 - 発生したすべての内部エラー(ORA-600)

 - ブロック破損エラー(ORA-1578)

 - デッドロックエラー(ORA-60)

 - SQL文(CREATE, ALTER, DROP DATABASE, TABLESPACE)

 - EMまたはSQL*PlusによるSTARTUP, SHUTDOWN等の管理操作

 - 共有サーバーエラー(ディスパッチャ機能エラー含む)

 

他にトレースログファイル*7が存在しますが本記事では割愛します。

 

 

インスタンスの起動

データベースの起動・停止は以下の管理ツールで行うことができます。

 - SQL*Plus

 - SQL Developer

 - Enterprise Manager Cloud Control

インスタンス、データベースの起動・停止にはSYSDBAまたはSYSOPER権限が必要です。

 

インスタンスの起動モードには4つの段階があります。

 - SHUTDOWN

 - NOMOUNT

 - MOUNT

 - OPEN

 

SHUTDOWNを除く各状態で操作可能なことおよび状態遷移で発生するイベントについて解説します。

 

NOMOUNT

インスタンスのみ起動した状態です。

NOMOUNT状態では以下の操作を行うことが可能です。

 - データベース作成

 - 制御ファイルの再作成

 - SGA、バックグラウンドプロセスの起動

 - アラートログファイル、トレースファイルのオープン

 

MOUNT

所定の制御ファイルをオープンした状態です。

MOUNT状態では以下の操作を行うことが可能です。

 - ファイル名の変更

 - オンラインREDOログファイルの有効化/無効化

 - 全データベースの回復

※MOUNT状態では制御ファイルからファイル名の取得のみ行うため、実際にデータファイルやオンラインREDOログファイルが存在するかどうかは判定しません。

 

OPEN

データファイルおよびオンラインREDOログファイルがオープンされた状態です。

OPEN状態では以下の操作を行うことが可能です。

 - データベース接続および操作

 

また、データベーウの整合性チェックが行われ、必要に応じてSMONによりインスタンスの回復が行われます。

 

SQL*Plusを使用した起動

コマンドで出題される傾向があるためコマンドを押さえておくと有効です。

 - startup [pfile=pfile名] [nomount | mount | open]

 

pfileオプションを省略した場合、自動的にspfile*8が読み込まれます。

また、nomount状態からopen状態に遷移することはできません。

nomount→mount→openと段階を踏む必要があります。

 

 

インスタンスの停止モード

前述の通り、停止についても起動と同様の管理ツール(SQL*Plus、SQL Developer、EMCC)を使用します。

停止を実行した時点で新規の接続が不可になります。

 

各停止モードは以下の通りです。

 - NORMAL

 - TRANSACTIONAL

 - IMMEDIATE

 - ABORT

 

NORMAL

全てのユーザーが接続を終了するまで待機します。

チェックポイントが発生し、メモリ上の情報はデータベースに保存されます。

クローズおよびディスマウントが行われます。

次回起動時のインスタンス回復は必要ありません。

 

TRANSACTIONAL

全てのトランザクションが終了するまで待機します。

チェックポイントが発生します。

クローズおよびディスマウントが行われます。

次回起動時のインスタンス回復は必要ありません。

 

IMMEDIATE

トランザクションロールバックされ、即時終了します。

チェックポイントが発生します。

クローズおよびディスマウントが行われます。

次回起動時のインスタンス回復は必要ありません。

 

ABORT

トランザクションロールバックすることなく即時終了します。

チェックポイントが発生しません。

クローズおよびディスマウントが行われません。

次回起動時にSMONによってインスタンス回復が行われます。

 

まとめると以下のような表になります。

停止モード NORMAL TRANSACTIONAL IMMEDIATE ABORT
新規接続 × × × ×
セッション終了待機 × × ×
トランザクション終了待機 × ×
チェックポイント生成 ×
クローズ処理 ×

 

 

学習チェック

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

 - 各名称と各ファイル形式

 - デフォルトSCOPEと指定した際の適用範囲

 

〇パラメータ変更

 - パラメータの種類と各適用方法

 

〇制限モード

 - 制限コマンドと制限内容

 

DDLロギング

 - パラメータの名称とファイル形式、使用用途

 

〇アラートログファイル

- 主な記録内容

 

インスタンスの起動

 - 各状態で操作可能なこと

 

インスタンスの停止モード

 - 各停止モードにおける特徴とリカバリ有無

 

 

免責事項等

本記事で解説している内容は機能を網羅するものではありません。

本記事はオラクル認定資格試験の合格を保証するものではありません。

本記事の内容に基づく運用等に関して管理人は一切の責任を負いません。

OracleJavaOracle Corporation及びその子会社、関連会社の米国およびその他の国における登録商標です。

本記事の社名、商品名等は各社の商標または登録商品である場合があります。

本記事に記載された内容は予告なく変更される場合があります。

本記事に記載されている会社名、製品名はそれぞれ各社の商標および登録商標です。

本記事では™、🄬、©等の表記は割愛させて頂いております。

本記事は[オラクルマスター教科書 Silver Oracle Database 12c]を参考にしております。

本記事は上記書籍を網羅および解説しているものではありませんので詳細に関しましては上記書籍をお買い求めください。 

 

 

*1:MEMORY:現行のみ反映 SPFILE:再起動後反映 BOTH:現行および再起動後の両方

*2:エディタで編集しない限り再起動による反映はされません。

*3:静的パラメータを除く

*4:デフォルトはFALSE

*5:ADRにはXMLファイル、テキストログが使用されます。

*6:alert_SID.log

*7:障害診断インフラストラクチャを含む内部エラー

*8:spfileSID.ora, spfile.ora, initSID.ora