プライマリ・コンテンツに移動
Oracle® Database管理者リファレンス
11gリリース2 (11.2) for Linux and UNIX-Based Operating Systems
B56317-12
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

D SolarisシステムでのOracle Databaseの管理

この付録では、SolarisでOracle Databaseの管理について説明します。

D.1 緊密共有メモリー

Solarisシステム上のOracle Databaseでは、Oracleプロセス間で仮想メモリー・リソースを共有するため、共有メモリー・セグメントとして緊密共有メモリーが使用されます。緊密共有メモリーを使用すると、共有メモリー・セグメント全体の物理メモリーが自動的にロックされます。

Solaris 10システムでは、ページング可能な動的緊密共有メモリーを使用できます。動的緊密共有メモリーを使用すると、Oracle Databaseではセグメントを共有するプロセス間で仮想メモリー・リソースを共有でき、同時にメモリーのページングも可能になります。このため、オペレーティング・システムでは、共有メモリー・セグメント全体の物理メモリーをロックする必要がありません。

Oracle Databaseでは、次の基準に基づいて、緊密共有メモリーまたは動的緊密共有メモリーが自動的に選択されます。

  • システムで動的緊密共有メモリーを使用でき、SGA_MAX_SIZE初期化パラメータの値が、結合されたすべてのSGAコンポーネントに必要なサイズよりも大きい場合に、動的緊密共有メモリーが使用されます。これにより、Oracle Databaseでは、使用される物理メモリー量のみがロックされます。また、Oracle DatabaseはDISMがシステムで使用可能であれば使用し、MEMORY_TARGETまたはMEMORY_MAX_TARGETはユーザーによって設定されます。

  • 起動時に共有メモリー・セグメント全体が使用中の場合、またはSGA_MAX_SIZEパラメータの値が、結合されたすべてのSGAコンポーネントに必要なサイズ以下の場合に、緊密共有メモリーが使用されます。

Oracle Databaseでは、緊密共有メモリーまたは動的緊密共有メモリーのいずれを使用するかに関係なく、インスタンスの起動後に、常に動的にサイズ変更できるコンポーネント(バッファ・キャッシュなど)、共有プールおよびラージ・プール間でメモリーを交換できます。Oracle Databaseでは、動的SGAコンポーネントからメモリーを解放し、それを別のコンポーネントに割り当てることができます。

動的緊密共有メモリーの使用時は、共有メモリー・セグメントがメモリー内で暗黙的にロックされないため、Oracle Databaseは起動時に使用している共有メモリーを明示的にロックします。動的なSGA操作によって使用される共有メモリーが増えると、Oracle Databaseは使用中のメモリーを明示的にロックします。動的なSGA操作によって共有メモリーが解放されると、Oracle Databaseは解放されたメモリーを明示的にロック解除するので、解放されたメモリーは他のアプリケーションで使用できるようになります。

Oracle Databaseは、oradismユーティリティを使用して共有メモリーのロックおよびロック解除を実行します。oradismユーティリティは、インストール時に自動的に設定されます。このため、動的SGAを使用するための構成作業は不要です。


注意:

  • サーバー・パラメータ・ファイルのLOCK_SGAパラメータは、TRUEに設定しないでください。設定した場合、Oracle Database 11gは起動できません。

  • oradismユーティリティのプロセス名は、ora_dism_sidです。sidはシステム識別子です。動的緊密共有メモリーを使用している場合、このプロセスはインスタンスの起動時に開始され、インスタンスの停止時に自動的に終了します。

    oradismユーティリティが正しく設定されていないことを示すメッセージがアラート・ログに表示された場合は、oradismユーティリティが$ORACLE_HOME/binディレクトリにあり、スーパーユーザーの権限が付与されていることを確認してください。