TimesTenデーモン属性の管理
timesten.conf
ファイルには、TimesTenデーモン属性が含まれています。
-
TimesTen Scaleoutでは、
timesten.conf
ファイルの値をインポートする場合は、ttGridAdmin
instanceConfigImport
コマンドを使用します。『Oracle TimesTen In-Memory Databaseリファレンス』のインスタンス構成属性のインポート(instanceConfigImport)を参照してください。 -
TimesTen Classicでは、
timesten.conf
ファイルの値を作成または変更する場合は、接続属性を使用するか、このファイルを手動で編集するか、ttInstanceCreate
ユーティリティまたはttInstanceModify
ユーティリティを使用します。ttInstanceModify
ユーティリティを使用して、特によく変更される属性についてtimesten.conf
ファイルを変更します。ttInstanceModify
を使用して特定の属性を変更できず、timesten.conf
ファイルを直接変更する必要がある場合は、TimesTenデーモンを停止してからファイルを変更します。ファイルの変更が完了したら、TimesTenデーモンを再起動します。TimesTenサーバー属性を変更する場合、停止する必要があるのはサーバーのみです。TimesTenデーモンを停止する必要はありません。Oracle TimesTen In-Memory DatabaseリファレンスのttInstanceCreateおよびttInstanceModifyを参照してください。
timesten.conf
ファイルの詳細は、Oracle TimesTen In-Memory DatabaseリファレンスのTimesTenインスタンスの構成ファイルを参照してください。
LinuxおよびUNIXの場合、timesten.conf
ファイルは、次のデーモンのホーム・ディレクトリにあります。
timesten_home/conf
timesten.conf
ファイルで制御される機能は次のとおりです。
-
デーモンがリスニングを行うネットワーク・インタフェース
-
TimesTenインスタンスに存在可能なTimesTenサブデーモンの最小数および最大数
-
TimesTenサーバーを起動するかどうか
-
クライアント/サーバーのプロセス間通信用に共有メモリー・セグメントを使用するかどうか
-
システムで事前に生成されるサーバー・プロセスの数
-
デーモン・ログ・ファイルおよびユーザー・ログ・ファイルの場所とサイズ
-
クリティカル・イベントに対して保存するデーモン・ロギングの期間
-
下位互換性
-
TimesTenインスタンスの最大ユーザー数
-
NFSマウントされたシステム間のデータ・アクセス。Linuxの場合のみです。
-
キャッシュ、OCI、Pro*C/C++またはODP.NETを使用するアプリケーションの
TNS_ADMIN
値。このオプションは、このファイルでは変更できません。 -
致命的エラーの後のデフォルトのデータベース・リカバリの変更
この項の後半の内容は次のとおりです。
デーモンでリスニングするアドレスの決定
デフォルトでは、TimesTenのメイン・デーモン、すべてのサブデーモンおよびエージェントは、使用可能な任意のアドレスを使用してリクエスト用のソケットでリスニングします。
すべてのTimesTenユーティリティおよびエージェントは、ループバック・アドレスを使用してメイン・デーモンと通信し、メイン・デーモンはループバック・アドレスを使用しエージェントと通信します。
デフォルトでは、IPv4アドレスとIPv6アドレスの両方が使用されます。IPv6アドレスの使用を無効にするには、timesten.conf
ファイルの別の行でenableIPv6
属性を0に設定します。
enableIPv6=0
この変更は、TimesTenメイン・デーモンの再起動後に有効になります。IPv4アドレスの使用は無効にできません。
TimesTenがリスニングするIPアドレスを制御するには、timesten.conf
ファイルでIPv4アドレスのlisten_addr
属性とIPv6アドレスのlisten_6_addr
属性を使用してこれらのアドレスを指定します。このオプションが指定されたアドレスには、ホスト名または数値のIPアドレスのいずれかを指定できます。複数のIPアドレスに解決されるホスト名を指定した場合、TimesTenはこれらすべてのアドレスをリスニングします。
listen_addr
属性およびlisten_6_addr
属性は、単一のサーバーに複数のネットワーク・アドレスおよび複数のネットワーク・カードが含まれている場合に存在します。TimesTenデーモンがサーバーのネットワーク・アドレスのサブセットをリスニングしているネットワーク・アドレスを制限するには、デーモンがリスニングするアドレスに対してのみエントリを作成します。
ノート:
listen_addr
属性またはlisten_6_addr
属性を使用すると、IPv4とIPv6の両方をリスニングする使用可能なすべてのアドレスが無効になります。つまり、listen_addr
属性を設定する場合は、listen_6_addr
属性も設定する必要があります(逆も同様)。
次に例を示します:
-
ローカル・ネットワークの内部と外部の両方でアクセス可能なパブリック・ネットワーク・アドレス、およびローカル・ネットワーク内部でのみアクセス可能なプライベート・アドレスがサーバーに含まれている場合、プライベート・アドレスのみを含む
listen_addr
属性またはlisten_6_addr
属性(あるいはその両方)を追加すると、パブリック・アドレスで受信されるTimesTenへのすべての通信がブロックされます。 -
ローカル・ホスト(またはループバック・アドレス)のみを指定することによって、TimesTenメイン・デーモンをサーバー外部からのすべての通信から切り離し、TimesTenメイン・デーモンでローカルのクライアントおよびサブデーモンのみと通信できます。
TimesTenレプリケーションでは、listen_addr
属性またはlisten_6_addr
属性は使用されません。レプリケーションの使用時にこれらの属性を設定する必要はありません。listen_addr
属性またはlisten_6_addr
属性が使用されている環境でレプリケーションを使用する場合は、使用可能なネットワーク・アドレスを使用するようにレプリケーション・スキームを構成する必要があります。
デーモンがリスニングする必要があるアドレスを明示的に指定するには、timesten.conf
ファイルの別の行に次のように入力します。
listen_addr=Ipv4Address listen_6_addr=Ipv6Address
たとえば、ループバック・アドレスのみをリスニングするようにデーモンを制限する場合は、次を追加します。
listen_addr=127.0.0.1 listen_6_addr=::1
または
listen_addr=localhost listen_6_addr=localhost
これは、ローカル・システム上のプロセスのみがデーモンと通信できることを意味します。他のシステムからのプロセスは除外されるため、他のシステムからのクライアント・アクセスなどの操作はできません。
異なるサブネットに複数のイーサネット・カードがある場合は、複数のlisten_addr
属性またはlisten_6_addr
属性(あるいはその両方)を指定してデーモンがリスニングするアドレスを制御できます。
たとえば、timesten.conf
ファイルにlisten_addr=10.20.30.51
とlisten_6_addr=2020:100:100:300::51
の両方を設定した場合、デーモンはIPv4ループバック・アドレス、指定されたIPv4アドレス、IPv6ループバック・アドレスおよび指定されたIPv6アドレスをリスニングします。
127.0.0.1 10.20.30.51 ::1 2020:100:100:300::51
timesten.conf
ファイルの別の行に、各属性のエントリを最大4つ入力できます。指定したアドレスに加えて、TimesTenは独自の目的で常にループバック・アドレスをリスニングします。
サブデーモンの管理
TimesTenメイン・デーモンは、必要に応じてサブデーモンを動的に生成します。最大数および最小数を指定して、デーモンが生成できるサブデーモンの範囲を手動で指定できます。
任意の時点で、リカバリ中の失敗した各アプリケーション・プロセスに対するTimesTenプロセス・リカバリに、1つのサブデーモンが必要な場合があります。
デフォルトでは、TimesTenは最小で2つのサブデーモンを生成し、サブデーモンのデフォルトの最大数を50に指定します。ただし、これらの設定は、timesten.conf
ファイルのmin_subs
属性およびmax_subs
属性に新しい値を割り当てることで変更できます。
共有メモリー・キーの範囲の構成
shmkey_range
デーモン属性を指定して、TimesTenで使用するすべての共有メモリー・キーの範囲を構成できます。
共有メモリーの衝突を防ぐため、共有メモリー・キーを特定の範囲内に制限できます。ただしこのオプションを使用する場合、特定の範囲内の共有メモリー・キーが他の共有メモリー・セグメントによって使用されていないことを確認するのはユーザーの責任になります。
ノート:
このオプションはUNIXまたはLinuxプラットフォームでのみ使用できます。このオプションはWindowsプラットフォームには使用できません。
構文は次のとおりです。
shmkey_range=low-high
次に例を示します:
shmkey_range=0x4000000-0x40FFFFFF
low-high句にスペースを含めることはできません。先頭と末尾も範囲に含まれます。したがって前述の例では、0x40000000と0x40FFFFFFはどちらも有効なキーです。また、範囲の最小サイズは16です。
このオプションを使用すると共有メモリー・キーが枯渇することがあります。特に複数の無効化が存在する場合や、当初の想定より多くのTimesTenデータベースが存在する場合に、これが発生することがあります。
共有メモリー・キーに対して次の無効な値のいずれかを入力すると、TimesTenデーモンによる起動プロセスは終了されます。
-
無効な数値文字列
-
範囲に数字を1つだけ指定
-
範囲指定で最初の数が2番目の数より大きい
-
範囲のサイズが16未満。
-
範囲指定が正しくない。