3 構成ファイルの構文規則

Oracle Net Servicesのパラメータ、キーワード、アドレスおよびネーミング・メソッドを構成する際の構文規則を学習します。

3.1 構成ファイルの構文の概要

Oracle Net Services構成ファイルは、構文規則および標準規則に従って作成します。

Oracle Net Servicesの構成ファイルには、キーワードと値のペアが含まれたパラメータが格納されています。キーワード値ペアは、カッコで囲まれています。

parameter=(keyword=value)

一部のキーワードには、その値として別のキーワード値ペアがあります。

(keyword=
    (keyword1=value1)
    (keyword2=value2))

たとえば、ローカル・ネーミング構成ファイル(tnsnames.ora)のアドレス部分には、次のような行が含まれていることがあります。

(ADDRESS=
   (PROTOCOL=tcp)
   (HOST=sales-server)
   (PORT=1521))

構成ファイルは、インデントを使用して、どのキーワードが別のキーワードと値のペアの親または所有者になっているかを示すように設定してください。このようなインデントをファイルで使用しない場合でも、折り返しのある行は少なくとも1つの空白でインデントする必要があります。そのようにしないと、新しいパラメータとして誤解釈されてしまいます。次の構文を使用できます。

(ADDRESS=(PROTOCOL=tcp)
  (HOST=sales-server)(PORT=1521))

次の構文は使用できません。

(ADDRESS=(PROTOCOL=tcp)
(HOST=sales-server)(PORT=1521))

3.2 構成ファイルの構文規則

構成ファイルの構造、階層および文字の要件に従います。

構成ファイルの構文には、次の規則が適用されます。

  • 構成ファイル内のキーワードのうち、パラメータで始まり、1つ以上のキーワードと値のペアが含まれているものは、行の左端の列に配置する必要があります。キーワードを1つ以上の空白でインデントすると、インデントされたキーワードは前の行の続きとして解釈されます。

  • すべての文字は、ネットワーク文字セットに含まれていることが必要です。

  • キーワードの大文字/小文字は区別されません。ただし、オペレーティング・システムとプロトコルによっては、値の大文字/小文字が区別されることがあります。

  • キーワードと値のペアでは、等号(=)の前後のスペースはオプションです。

  • キーワードには階層があり、一部のキーワードの後ろには必ず別のキーワードが続きます。キーワードは、階層のどのレベルでも任意の順序でリストできます。たとえば、次の2つの構文は同じで、いずれも有効です。

    (ADDRESS=
       (PROTOCOL=TCP)
       (HOST=sales-server)
       (PORT=1521))
    
    (ADDRESS=
       (PROTOCOL=tcp)
       (PORT=1521)
       (HOST=sales-server))
    
  • キーワードに空白を含めることはできません。

  • 空白を含む値が二重引用符(")または単一引用符(')で囲まれていないかぎり、値に空白を含めることはできません。

  • キーワード値ペアで、等号の前後に単一語または連続語を入力する場合、カッコは不要です。

  • 接続記述子の最大長は4KBです。

  • 行の先頭にシャープ記号(#)を使用すると、コメントを含めることができます。シャープ記号の後から行の終わりまでが、すべてコメントとみなされます。

3.3 キーワードのネットワーク文字セット

キーワード値およびネットワーク文字セットには、許可されている文字セットを使用できます。

キーワード値に使用できるネットワーク文字セットには、次の文字があります。接続記述子は、シングルバイト文字にしてください。

A-Z, a-z
0-9
( ) < > / \
, . : ; ' "=- _
$ + * # & ! % ? @

この文字セットの中では、次の記号が予約済です。

( ) = \ " ' #

キーワードまたは値を引用符で囲まない場合は、予約記号をキーワードまたは値の一部としてではなくデリミタとして使用します。予約記号を含む値がある場合は、一重引用符または二重引用符を使用して値を囲みます。引用符で囲んだ値の中に引用符を挿入する場合は、異なる種類の引用符を使用します。円記号(\)は、エスケープ文字として使用します。

次の文字は接続記述子の中では使用できますが、キーワードまたは値の中では使用できません。

  • スペース

  • タブ

  • 改行(CR)

  • 改行(NL)

3.4 リスナーおよびネット・サービスの名前に許可される文字セット

クライアントのリスナー名およびネット・サービス名は、Oracle Net Services文字セット要件に準拠するように作成してください。

リスナー名およびネット・サービス名は、次の文字セットに制限されています。

[a...z] [A...Z] [0...9] _

リスナー名またはネット・サービス名の最初の文字は英数字にする必要があります。一般に、最大64文字の長さの名前を使用できます。また、データベース・サービス名は、データベース管理者が定義したグローバル・データベース名と一致している必要があります。この名前は、データベース名とデータベース・ドメインで構成されています。ネット・サービス名とグローバル・データベース名は、いずれも大/小文字が区別されません。