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

前
 
次
 

B LinuxシステムでのOracle Databaseの管理

この付録では、LinuxシステムでOracle Databaseを管理する方法について説明します。

内容は次のとおりです。


注意:

Oracle Database 11gリリース2 (11.2)からは、Linux x86-64およびIBM: Linux on System zメディアにはLinux x86バイナリは含まれません。

B.1 LinuxでのHugePagesの使用

Linuxにおいて、Oracle Databaseでラージ・ページ(HugePagesとも呼ばれる)を使用可能にするには、vm.nr_hugepagesカーネル・パラメータの値を設定し、予約するラージ・ページ数を指定します。データベース・インスタンスのSGA全体を保持するために十分なラージ・ページを指定する必要があります。必要なパラメータ値を判断するには、インスタンスのSGAサイズをラージ・ページのサイズで除算してから、結果の端数を切り上げて最も近い整数にします。

デフォルトのラージ・ページ・サイズを判断するには、次のコマンドを実行します。

# grep Hugepagesize /proc/meminfo

たとえば、/proc/meminfoにラージ・ページのサイズが2MBとリストされ、インスタンスの総SGAサイズが1.6GBの場合は、vm.nr_hugepagesカーネル・パラメータの値を820(1.6GB / 2MB = 819.2)に設定します。

B.2 非同期入出力のサポート


注意:

Linuxの自動ストレージ管理では、デフォルトで非同期入出力が使用されます。非同期入出力は、ネットワーク・ファイル・システムに格納されたデータベース・ファイルに対してはサポートされません。

Oracle Databaseでは、カーネルの非同期入出力がサポートされます。デフォルトでは、非同期入出力はRAWボリュームで使用可能です。デフォルトでは自動ストレージ管理で非同期入出力が使用されます。

デフォルトでは、パラメータ・ファイルのDISK_ASYNCH_IO初期化パラメータはTRUEに設定されています。ファイル・システムのファイルに対して非同期入出力を有効にするには、次の手順を実行します。

  1. すべてのOracle Databaseファイルが、非同期入出力をサポートしているファイル・システム上にあることを確認します。

  2. パラメータ・ファイルのFILESYSTEMIO_OPTIONS初期化パラメータをASYNCHまたはSETALLに設定します。


    注意:

    ファイル・システムのファイルがODMライブラリ・インタフェースまたはDirect NFSクライアントで管理されている場合、デフォルトで、非同期入出力が有効になります。これらの環境では、非同期入出力を有効にするために、FILESYSTEMIO_OPTIONSを設定する必要はありません。

B.3 非同期入出力サポート


注意:

Linuxの自動ストレージ管理では、デフォルトで非同期入出力が使用されます。非同期入出力は、ネットワーク・ファイル・システムに格納されたデータベース・ファイルに対してはサポートされません。

Oracle Databaseでは、カーネルの非同期入出力がサポートされます。この機能はデフォルトで無効です。

デフォルトでは、RAWデバイス上で非同期I/Oを有効化するため、パラメータ・ファイルのDISK_ASYNCH_IO初期化パラメータはTRUEに設定されています。ファイル・システムのファイルに対して非同期入出力を有効にするには、次の手順を実行します。

  1. すべてのOracle Databaseファイルが、非同期入出力をサポートしているファイル・システム上にあることを確認します。

  2. パラメータ・ファイル内のFILESYSTEMIO_OPTIONS初期化パラメータをASYNCHに設定すると、非同期入出力が有効になります。非同期入出力と直接入出力の両方を有効にする場合は、パラメータ・ファイル内のFILESYSTEMIO_OPTIONS初期化パラメータをSETALLに設定します。

B.4 直接入出力サポートの有効化

直接入出力サポートは使用可能であり、Linuxでサポートされます。

直接入出力サポートを有効にする手順

  • FILESYSTEMIO_OPTIONS初期化パラメータをDIRECTIOに設定します。

  • パラメータ・ファイルのFILESYSTEMIO_OPTIONS初期化パラメータをSETALLに設定することにより、非同期入出力および直接入出力の両方を有効にできます。

B.5 同時マルチスレッドの有効化

同時マルチスレッドが有効になっている場合、v$osstatビューは、オンライン論理(NUM_LCPUS)および仮想CPU(NUM_VCPUS)に対応した2つの行を追加して報告します。

B.6 共有リソースの割当て

MEMORY_TARGETまたはMEMORY_MAX_TARGET機能を使用するには、次のカーネル・パラメータを変更する必要があります。

  • /dev/shmマウント・ポイントは、SGA_MAX_SIZEの値が設定されていれば、その値以上にするか、MEMORY_TARGETMEMORY_MAX_TARGETのうちいずれか大きいほうの値以上に設定する必要があります。たとえば、MEMORY_MAX_TARGET=4GBのみが設定されている場合、4GBのシステムを/dev/shmマウント・ポイントに作成するには、次の手順を実行します。

    • rootユーザーで次のコマンドを実行します。

      # mount -t tmpfs shmfs -o size=4g /dev/shm
      
    • システムの再起動時にインメモリー・ファイル・システムが確実にマウントされるように、/etc/fstabファイルに次のようなエントリを追加します。

        tmpfs /dev/shm tmpfs size=4g 0
      
  • 各Oracleインスタンスのファイル記述子の数は、512*PROCESSESだけ増加します。したがって、ファイル記述子の最大数は、少なくともこの値以上にし、オペレーティング・システムの要件に応じてさらに数を足す必要があります。たとえば、cat /proc/sys/fs/file-maxコマンドで32768が返され、PROCESSESが100である場合、Oracleに対して51200使用可能にするには、rootとしてこの値を6815744以上に設定します。次のどちらかのオプションを使用して、file-max記述子の値を設定します。

    • 次のコマンドを実行します。

      echo 6815744 > /proc/sys/fs/file-max
      

      または

    • /etc/sysctl.confファイル内で次のエントリを変更し、rootとしてシステムを再起動します。

      fs.file-max = 6815744
      
  • プロセスごとのファイル記述子の数は、512以上である必要がありますたとえば、rootとして次のコマンドを実行します。

    • bashおよびshの場合

      # ulimit -n
      
    • cshの場合

      # limit descriptors
      

    前のコマンドで200が返される場合、次のコマンドを実行して、プロセッサごとのファイル記述子の上限の値(たとえば、1000)を設定します。

    • bashおよびshの場合

      # sudo sh
      # ulimit -n 1000
      
    • cshの場合

      # sudo sh
      # limit descriptors 1000
      
  • LOCK_SGAが有効になっている場合、MEMORY_TARGETおよびMEMORY_MAX_TARGETは使用できません。MEMORY_TARGETおよびMEMORY_MAX_TARGETは、LinuxのHugeページと使用することもできません。