PLSQL_MEMORY_ADDRESS
PL/SQLを使用するには、共有メモリー・セグメントが必要です。この属性は、この共有メモリー・セグメントが、TimesTenダイレクト・ドライバを利用する各プロセスにロードされる仮想アドレスを指定します。
この共有メモリーには、最近実行されたPL/SQLコード、共有パッケージの状態およびPL/SQLの処理に関連付けられたメタデータが格納されます。この共有メモリー・セグメントは、TimesTenデータベースを格納するセグメントとは別の共有メモリー・セグメントです。
この共有メモリー・セグメントがロードされるメモリー・アドレスは、TimesTenを使用する各プロセスで同一である必要があります。値は16進のアドレスとして指定する必要があります。
PLSQL_MEMORY_ADDRESS
に値を指定しなかった場合、TimesTenはプラットフォーム依存のデフォルト値を使用します。
各プラットフォームのデフォルト値は、次のように設計されています。
-
TimesTenデータベースおよびアプリケーションの仮想領域の容量を最大限に高める。
-
仮想アドレス領域の断片化を最小限に抑える。
-
仮想アドレス領域の他の利用との競合を避ける。
プラットフォーム固有のデフォルトのメモリー・アドレスは、次のとおりです。
オペレーティング・システム | アドレス |
---|---|
Linux x86-64 |
|
AIX |
|
Windows |
|
HP-UX |
|
この属性を設定する場合の注意事項は、次のとおりです。
-
アプリケーションが複数のTimesTenデータベースにダイレクト・モードで同時に接続する場合、各データベースは
PLSQL_MEMORY_ADDRESS
に対して異なる値を使用する必要があります。 -
この属性の値は、TimesTenによって永続的に保存されます。データベースがTimesTenによって自動的にロードされる状況において、永続的な属性値が指定されます。たとえば、データベースの
RamPolicy
が1に設定されている場合、データベースは自動的にロードされます。 -
PL/SQL共有メモリーを適切なアドレスでマップできない場合、TimesTenによってエラーが返され、データベースへの接続は失敗します。
-
メモリー・セグメントのサイズは、
PLSQL_MEMORY_SIZE
の値によって決定されます。
必要な権限
インスタンス管理者のみがこの属性の値を変更できます。
TimesTen ScaleoutおよびTimesTen Classicでの使用
この属性は、TimesTen ClassicとTimesTen Scaleoutの両方でサポートされています。設定
PLSQL_MEMORY_ADDRESS
は次のように設定します。
属性の設定場所 | 属性の表示 | 設定 |
---|---|---|
CまたはJavaプログラム、あるいはUNIXおよびLinuxシステムのTimesTen Classicの |
|
PL/SQLプロセス用のメモリー・アドレスを指定する16進値。 |
Windows ODBCデータソース・アドミニストレータ |
該当なし |