PL/SQL共有メモリーをアタッチできない
PLSQL_MEMORY_ADDRESS初期接続属性は、PL/SQL共有メモリー・セグメントが、TimesTenダイレクト・ドライバを利用する各プロセスにロードされる仮想アドレスを指定します。アドレス空間のマッピング方法は、オペレーティング・システムのプラットフォームによってそれぞれ異なるため、PLSQL_MEMORY_ADDRESS接続属性で定義されているPL/SQLアドレス空間のデフォルトの値は各プラットフォームで異なり、その結果、アドレス空間がマッピングされたオペレーティング・システムとの競合を回避することができます。
ただし、アプリケーションが、アドレス空間をマッピングしたPL/SQLと重複する場合、エラー8517「Cannot attach PL/SQL shared memory; PLSQL_MEMORY_ADDRESS not valid or already in use.」を受信する場合があります。この場合、PLSQL_MEMORY_ADDRESS接続属性の設定を変更して重複を削除します。次のいずれかの理由で、エラー8517を受信する場合があります。
-
ユーザーが割り当てたメモリーでそのアドレスがすでに使用されている。
-
一部の共有メモリーでそのアドレスがすでに使用されている。
-
共有ライブラリでそのアドレスがすでに使用されている。
アプリケーションが2つ以上のTimesTenデータベースに同時に接続する場合、デフォルト設定では、PL/SQLメモリー・アドレスをすべてのTimesTenデータベースに対して同じアドレスにマッピングするため、いずれか1つを除くすべてのTimesTenデータベースのPLSQL_MEMORY_ADDRESS属性のデフォルト設定を変更する必要があります。