日本語PDF

1.3 パラメータ・ファイル

パラメータ・ファイルは、初期化パラメータのリストおよび各パラメータの値を格納しているファイルです。初期化パラメータをパラメータ・ファイルに指定して、特定のインストールを反映させます。

Oracleは、次の2種類のパラメータ・ファイルをサポートしています。

1.3.1 サーバー・パラメータ・ファイル

サーバー・パラメータ・ファイルは、初期化パラメータのリポジトリとして機能するバイナリ・ファイルです。

サーバー・パラメータ・ファイルは、Oracle Databaseサーバーが稼働しているコンピュータに格納できます。サーバー・パラメータ・ファイルに格納された初期化パラメータは持続性があり、インスタンスの実行中に加えられたパラメータへの変更はインスタンスの停止から起動までの間も持続します。

関連項目:

サーバー・パラメータ・ファイルおよび初期化パラメータ・ファイルの概要と、管理および使用の詳細は、『Oracle Database管理者ガイド』を参照してください。

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

初期化パラメータ・ファイルは、初期化パラメータのリストを含むテキスト・ファイルです。

ノート:

初期化パラメータ・ファイルの値の指定時に使用する文字セットの詳細は、パラメータ値の文字セットについてを参照してください。

次に、初期化パラメータ・ファイルのサンプル・エントリを示します。

PROCESSES = 100
OPEN_LINKS = 12
GLOBAL_NAMES = true

初期化パラメータ・ファイルの名前は、オペレーティング・システムによって異なります。たとえば、この名前に小文字のみが使用されたり、大/小文字の両方が使用されたりします。また、論理名や名前init.oraのバリエーションが含まれる場合もあります。データ・ウェアハウスおよびデータ・マート用の推奨されるパラメータが設定されているinitdw.oraファイルもあります。データベース管理者は、初期化パラメータ・ファイル用に異なるファイル名を選択できます。

初期化パラメータ・ファイルのオペレーティング・システム上でのデフォルトの位置およびファイル名については、オペレーティング・システム固有のOracleマニュアルを参照してください。初期化パラメータ・ファイルは、サーバーを起動するためにクライアント側ツール(たとえば、SQL*Plus)が読み込むファイルです。

サンプル初期化パラメータ・ファイルは、それぞれのオペレーティング・システム用のOracle配布媒体により提供されます。当面の使用には、サンプル・ファイルで間に合いますが、最高のパフォーマンスを得るためにデータベースをチューニングするには、このファイルを変更します。すべての変更は、インスタンスを完全に停止してから再起動することによって有効になります。

1.3.2.1 パラメータ値の文字セットについて

データベース・プラットフォームのデフォルトの文字セットの文字のみがパラメータ値でサポートされています。IBM z/OSおよびFujitsu BS2000を除くすべてのプラットフォームの場合、プラットフォームのデフォルトの文字セットはUS7ASCII (7-bit ASCII)です。

サポートされていない文字を含むパラメータ値が指定された場合、データベースの動作は定義されません。ALTER SYSTEM文を使用してサーバー・パラメータ・ファイルにパラメータ値を指定した場合、サポートされいる文字のみを使用します。サポートされていない文字を含む値が指定された場合、データベースは必ずしもエラーを報告するわけではありません。

初期化パラメータ・ファイルはクライアント側のファイルです。使用した場合、SQL*Plusを起動してデータベース・インスタンスを起動したホストに配置されます。初期化パラメータ・ファイルには、NLS_LANGクライアント設定で指定したとおりにクライアントの文字セットで書き込む必要があります。ただし、パラメータ値には、データベースのデフォルトの文字セットでサポートされない文字を含めないようにしてください。

1.3.2.2 初期化パラメータ・ファイル内の値の指定

この項では、初期化パラメータ・ファイル内のパラメータ値の設定に関する様々な事項について説明します。

1.3.2.2.1 初期化パラメータ・ファイルを管理するルール

この項では、初期化パラメータ・ファイル内のパラメータの仕様を管理するルールについて説明します。

  • 初期化パラメータ・ファイルにはパラメータおよびコメントのみが含まれます。コメントはポンド記号(#)で始まります。その行のシャープ記号以降の内容は無視されます。

  • コメントには、パラメータ値と同じ文字セットを使用する必要があります。
  • パラメータは任意の順序で指定できます。

  • ファイル名の中で、大/小文字の区別に意味があるのは、ホスト・オペレーティング・システム上で大/小文字の区別に意味がある場合のみです。

  • 1行に複数のパラメータを入力する場合は、次に示すようにパラメータ名と値の間に空白を入れます。

    PROCESSES = 100 CPU_COUNT = 1 OPEN_CURSORS = 10
    
  • パラメータによっては、複数の値を指定できるものもあります(ROLLBACK_SEGMENTSなど)。次に示す例はすべて有効な構文です。

    • 複数の値を入力する場合は、カッコで囲みカンマで区切ります。たとえば:

      ROLLBACK_SEGMENTS = (SEG1, SEG2, SEG3, SEG4, SEG5)
      
    • カッコとカンマを使用せずに複数の値を入力します。たとえば:

      ROLLBACK_SEGMENTS = SEG1 SEG2 SEG3 SEG4 SEG5
      
    • 1行に値を1つずつ入力して、複数の値を指定します。たとえば:

      ROLLBACK_SEGMENTS = SEG1
      ROLLBACK_SEGMENTS = SEG2
      ROLLBACK_SEGMENTS = SEG3
      ROLLBACK_SEGMENTS = SEG4
      ROLLBACK_SEGMENTS = SEG5
      

    1つのパラメータに対する複数の値を複数の行に入力する場合は、そのエントリの行が連続している必要があります。エントリが連続する行にない場合、最初のエントリが適切に処理されません。たとえば、次のエントリでは、SEG3およびSEG4は、SEG1およびSEG2をオーバーライドします。

    ROLLBACK_SEGMENTS = SEG1 SEG2
    OPEN_CURSORS = 10
    ROLLBACK_SEGMENTS = SEG3 SEG4
    
  • エスケープ文字とも呼ばれるバックスラッシュ(\)は、パラメータの指定が継続することを示します。バックスラッシュで行を継続する場合は、次の行頭に空白を入力しないでください。たとえば:

    ROLLBACK_SEGMENTS = (SEG1, SEG2, \
    SEG3, SEG4, SEG5)
    
  • IFILE初期化パラメータを使用すると、現行の初期化パラメータ・ファイルに他の初期化パラメータ・ファイルの内容を埋め込むことができます。

  • パラメータに空白またはタブを含む値を指定する場合は、引用符で囲みます。特に指定がないかぎり、一重引用符または二重引用符を使用できます。たとえば:

    NLS_TERRITORY = 'CZECH REPUBLIC'
    

    ノート:

    初期化パラメータ・ファイルにパラメータをアルファベット順にまとめておいてください。これによって、容易にパラメータを見つけることができ、どのパラメータも確実に1回のみ指定できるようになります。

  • パラメータに特殊文字を含む値を指定する場合は、引用符で囲みます。

関連項目:

  • 初期化パラメータ・ファイルの詳細は、オペレーティング・システム固有のOracleマニュアルを参照してください。

  • IFILE

1.3.2.2.2 パラメータ値での特殊文字の使用

パラメータに特殊文字を含む値を指定する場合は、その特殊文字の前にバックスラッシュを付けるか、またはパラメータ全体を引用符で囲む必要があります。

次のいずれかを使用して、特殊文字を指定できます。

DB_DOMAIN = 'JAPAN.ACME#.COM'

DB_DOMAIN = JAPAN.ACME\#.COM

表1-1に、初期化パラメータ・ファイルで使用できる特殊文字を示します。

表1-1 初期化パラメータ・ファイルの特殊文字

文字 名前 説明

#

シャープ記号

コメント

(

左カッコ

値リストの開始

)

右カッコ

値リストの終了

"

二重引用符

引用符で囲む文字列の開始または終了

'

一重引用符

引用符で囲む文字列の開始または終了

=

等号

キーワードと値のセパレータ

,

カンマ

要素のセパレータ

-

マイナス記号

UNIXスタイルのキーワードの接頭辞

\

バックスラッシュ

エスケープ文字

特殊文字を初期化パラメータ・ファイルでリテラルとして指定する場合は、その特殊文字の前にバックスラッシュを付けるか、またはその特殊文字を含む文字列全体を引用符で囲む必要があります。

1.3.2.2.3 エスケープ文字の使用

初期化パラメータ・ファイルでは、バックスラッシュ(\)は行の継続も表します。英数字の前に指定したバックスラッシュは、通常の文字として扱われます。

英数字以外の文字の前に指定したバックスラッシュは、バックスラッシュまたは継続文字として扱われます。

1.3.2.2.4 引用符の使用方法

初期化パラメータ・ファイルでは、2つの方法を使用して引用符をネストできます。

まず、ネストした文字列に引用符を二重に付ける方法です。たとえば:

NLS_DATE_FORMAT = '''Today is'' MM/DD/YYYY'

次は、一重引用符と二重引用符を交互に付ける方法です。たとえば:

NLS_DATE_FORMAT = '"Today is" MM/DD/YYYY'