TimesTenをインストールする前に、該当する要件がご使用のオペレーティング・システムで満たされていることを確認します。
JDBCがサポートされるプラットフォームでJDBCを使用するには、マシンに適切なバージョンのJDKをインストールしておく必要があります。プラットフォームに必要なJDKについては、「プラットフォームおよび構成」を参照してください。
Windowsでは、TimesTenはTCP/IPを使用します。システムにTCP/IPがインストールされていない場合、TimesTenはインストールされません。TCP/IPをインストールするには、「ネットワーク」コントロール パネルの「プロトコル」タブを使用します。
一般的に、UNIX Systemsでは、次の構成を行う必要があります。
TimesTenは、アクティブなデータ・ストアごとにSEMMNIを1つ消費し、クライアント/サーバー通信が共有メモリーを介して実行されるTimesTenインスタンスごとに、さらにSEMMNIを1つ消費します。実行する予定の最小限のデータ・ストアの数が許容されるように、このセマフォを設定します。
UNIX SystemsでJDBCを実行する場合は、最新のJDKパッチをインストールします。必要なパッチについては、OSプロバイダのWebサイトを参照してください。
JDBCアプリケーションで大規模なVARCHAR/VARBINARY列を選択した場合、JVMがメモリーを使い切ることがあります。JVMが使用する最大のヒープ・サイズは、Javaコマンドライン・オプションの-Xmxを指定して増加することができます。
TimesTenで許容されているTimesTen Serverへの同時IPC接続の最大数は9,999です。ただし、システムでの制限が、単一のDSNへの接続数よりも優先します。クライアント/サーバーのユーザーは、ファイル記述子の制限を引き上げることで、多数の接続および処理をサポートすることができます。
たとえば、Solarisサーバーで、クライアント/サーバーの同時接続が最大1024である場合に、次の行を追加してファイル記述子の制限を変更することができます。
set rlim_fd_max = 1080
これは、/etc/systemに追加します。
この例では、予想されるクライアント/サーバー接続は1080以下であるため、接続数にいくらか余裕を持たせることができます。
レプリケーション用に、TCP送信バッファおよびTCP受信バッファを512KB以上に増加する必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
HP-UX Systemsでは、2つ以上のデータ・ストアに同時に接続する場合は、カーネル・パラメータsemmnsの値を増加する必要があります。
HP-UX Systemsでは、パラメータshmmaxの値も増加する必要があります。この変更を行うには、次の手順を実行します。
64-bit HP-UX Systemsでは、データ・ストアが2GBを超える場合、大規模ファイルを有効にします。HP-UXがデフォルトでサポートするファイル・サイズは2GB以下です。
大規模ファイルを有効にするには、fsadmに-o largefilesオプションを指定して、ファイル・システムを変換します。次のコマンドを使用します。
% /usr/sbin/fsadm -F hfs -o largefiles device_name例:
% /usr/sbin/fsadm -F hfs -o largefiles \ /dev/vg02/rlvol1
レプリケーション用に、TCP送信バッファおよびTCP受信バッファを512KB以上に増加する必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
HP-UX 11i、11.23(11iv2)の場合は、次のコマンドを使用します。
# /usr/bin/ndd -set /dev/tcp tcp_xmit_hiwater_lfp 524288 # /usr/bin/ndd -set /dev/tcp tcp_recv_hiwater_lfp 524288 # /usr/bin/ndd -set /dev/tcp tcp_xmit_hiwater_lnp 524288 # /usr/bin/ndd -set /dev/tcp tcp_recv_hiwater_lnp 524288 # /usr/bin/ndd -set /dev/tcp tcp_xmit_hiwater_max 524288 # /usr/bin/ndd -set /dev/tcp tcp_recv_hiwater_max 524288
Linuxでは、TimesTenはRed Hat Enterprise Linux ES、AS、WS 3、WS 4、MontaVista Carrier Grade Edition(Linux)リリース3.1およびSUSE LINUX Enterprise System 9の最小限の構成でテスト済です。この最小限の構成には、カスタム・インストールで「Network Workstation」を選択した場合から、すべてを網羅する「Everything」を選択した場合まで含まれています。マシン上でシステム固有の開発を行うには、C開発ツールが必要です。
既存のカーネル・パラメータ設定を表示するには、rootとしてログインし、次のコマンドを使用します。
たとえば、共有メモリー・サイズを256MBに増加するには、rootとして、次の行を追加して/etc/sysctl.confファイルを編集します。
kernel.shmmax=268435456再起動せずに共有メモリーのサイズを増やすには、次のコマンドを使用します。
% /sbin/sysctl -w kernel.shmmax=268435456/procファイル・システムにカーネルを構成してマウントしている場合は、次のコマンドを使用して共有メモリーの現在の最大セグメント・サイズ(バイト単位)を確認できます。
% cat /proc/sys/kernel/shmmaxこの値は、次のコマンドを使用して変更することもできます。
% echo 268435456 > /proc/sys/kernel/shmmaxこのコマンドの機能は、sysctlコマンドと同じです。
Red Hat Linux Systemsで、6を超えるShmIpcクライアント/サーバー接続を可能にするには、次の行を追加します。
kernel.sem = "250 32000 100 100"これは、/etc/sysctl.confファイルに追加し、その後で再起動します。
これによって、パラメータ値が次のように設定されます。
SEMMSL=250 SEMMNS=32000 SEMOPM=100 SEMMNI=100
TimesTen/Cacheをインストールし、WebベースのCache Administratorを使用する場合は、次のRPMパッケージをインストールします。
Red Hat 3.0の場合:
compat-libstdc++-7.3-2.96.123Red Hat 4.0の場合:
compat-libstdc++-296-2.96.132.7.2これらのパッケージは、rpmコマンドを使用してインストールするか、「Legacy Software Development」にあるRed HatのGUIインストーラを使用してインストールします。
レプリケーション用に、TCP送信バッファおよびTCP受信バッファを512KB以上に増加する必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
# /sbin/sysctl -w net.ipv4.tcp_rmem="4096 4194304 4194304" # /sbin/sysctl -w net.ipv4.tcp_wmem="98304 4194304 4194304" # /sbin/sysctl -w net.ipv4.tcp_mem="98304 4194304 4194304" # /sbin/sysctl -w net.core.rmem_default=65535 # /sbin/sysctl -w net.core.wmem_default=65535 # /sbin/sysctl -w net.core.rmem_max=4194304 # /sbin/sysctl -w net.core.wmem_max=4194304 # /sbin/sysctl -w net.ipv4.tcp_window_scaling=1
Cache Connect用に、TCP送信バッファおよびTCP受信バッファをより大きな値に増加させる必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
# /sbin/sysctl -w net.ipv4.tcp_rmem="4096 4194304 4194304" # /sbin/sysctl -w net.ipv4.tcp_wmem="98304 4194304 4194304" # /sbin/sysctl -w net.ipv4.tcp_mem="98304 4194304 4194304" # /sbin/sysctl -w net.core.rmem_default=262144 # /sbin/sysctl -w net.core.wmem_default=262144 # /sbin/sysctl -w net.core.rmem_max=4194304 # /sbin/sysctl -w net.core.wmem_max=4194304 # /sbin/sysctl -w net.ipv4.tcp_window_scaling=1 # /sbin/sysctl -w net.ipv4.ip_local_port_range="1024 65000"
Solaris 8では、パッチ108827-36以上が必要です。
インストール済のパッチのリストを表示するには、次のコマンドを使用します。
Solarisでは、TimesTenはインストール時にIPC構成を確認します。IPC SemaphoresモジュールまたはIPC共有メモリー・モジュールのいずれかがインストールされていない場合は、次のコマンドを使用して、それらを手動でインストールできます。
Solaris 10 Systemsの場合、/etc/systemにエントリがなければ、セマフォはデフォルトの設定で十分です。Solaris 10 Systemsで共有メモリーを設定するには、project.max-shm-memoryを指定します。
その他のSolaris Systemsの場合は、セマフォの数を増加する必要があります。TimesTenは、アクティブなデータ・ストアごとにSEMMNIを1つ消費し、クライアント/サーバー通信が共有メモリーを介して実行されるTimesTenインスタンスごとに、さらにSEMMNIを1つ消費します。
各データ・ストアでは、Connections属性がデフォルト値(64)に設定されている場合、TimesTenは100のSEMMSLを消費します。さらに、推定接続数がデフォルト値を超えている場合は、デフォルト値を超えた接続ごとにSEMMSLを1つ消費します。次の手順を実行して、セマフォの数を増加することをお薦めします。
Solarisでは、プロセスごとのShmIpcクライアントDSN接続が6を超える場合、SHMSEGカーネル・パラメータを変更する必要があります。
set shmsys:shminfo_shmseg=12
Sun 64-bit JVMを使用して、64-bitのJavaアプリケーションをSolarisで実行するには、Javaコマンドラインに-d64オプションを指定する必要があります。
Solaris Systemでは、次の変更も行う必要があります。
set rlim_fd_cur=4096
set rlim_fd_max=4096
set shmsys:shminfo_shmmax = 0x20000000
データ・ストアをSolaris UFSファイル・システムに格納し、トランザクション整合性チェックポイントを使用している場合、チェックポイントに対して最高のパフォーマンスを得るために、一部のカーネル・パラメータの設定を変更する必要がある場合があります。Solaris UFS Throttleアルゴリズムは、バイト・カウントのしきい値が最高水位標を超えると、大きなファイルを書き込む処理をスリープ状態にします。このアルゴリズムを無効にするには、次の行を追加します。
set ufs:ufs_WRITES = 0これは、/etc/systemファイルに追加します。
かわりに、次の行を追加して、最高水位標を引き上げることもできます。
set ufs:ufs_HW = <desired value>これは、/etc/systemファイルに追加します。
新しい値を有効にするには、システムを再起動する必要があります。
最高水位標は、値を小さくしていても問題はありませんが、チェックポイント・ファイルのサイズに設定すると、パフォーマンスが向上します。UFS Throttleアルゴリズムについては、ホワイト・ペーパー『Understanding Solaris Filesystems and Paging』(SMLI TR-98-55)を参照してください。これは、http://www.sun.comから入手できます。
レプリケーション用に、TCP送信バッファおよびTCP受信バッファを512KB以上に増加する必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
# /usr/sbin/ndd -set /dev/tcp tcp xmit_hiwat=524288 # /usr/sbin/ndd -set /dev/tcp tcp_recv_hiwat=524288
Tru64 UNIX Systemsで、既存のカーネル・パラメータ設定を表示するには、rootユーザーとしてログインし、次のコマンドを使用します。
# /sbin/sysconfig -q ipc各データ・ストアでは、Connections属性がデフォルト値(64)に設定されている場合、TimesTenは100のSEMMSLを消費します。さらに、推定接続数がデフォルト値を超えている場合は、デフォルト値を超えた接続ごとにSEMMSLを1つ消費します。次の手順を実行して、セマフォの数を増加することをお薦めします。
プロセスが使用する最大アドレス空間を増加するには、カーネル値per_proc_address_spaceおよびmax_per_proc_address_spaceを変更します。
プロセスが使用する最大データ・セグメント(malloc領域)を増加するには、カーネル値per_proc_data_sizeおよびmax_per_proc_data_sizeを変更します。
たとえば、これらの値をすべて10GBに変更するには、次の手順を実行します。
per_proc_address_space = 10737418240
max_per_proc_address_space = 10737418240
per_proc_data_size = 10737418240
max_per_proc_data_size = 10737418240
Tru64 UNIXでは、プロセスごとのShmIpcクライアントDSN接続が6を超える場合、SHMSEGカーネル・パラメータを変更する必要があります。カーネル・パラメータは、dxkerneltunerインタフェースまたはsysconfigdbコマンドを使用して変更できます。
レプリケーション用に、TCP送信バッファおよびTCP受信バッファを512KB以上に増加する必要があります。次のコマンドを、システムの起動時に実行可能なスクリプトに組み込む必要があります。
次の表は、一般的なインストールでのディスク領域(概算)の要件を示します。表中の「移動可」には、ユーザーがインストール時に指定したファイル・システムに、コンポーネントがインストールされているかどうかが示されています。変数install_dirは、現行のリリースのTimesTenがインストールされているディレクトリを表します。TimesTenリリース6.0のデフォルトのインストール・ディレクトリは次のとおりです。
各オペレーティング・システムのシステム・ディレクトリには、移動できない特定のファイルがインストールされます。
大規模な削除処理を実行するトランザクションを含むアプリケーションの場合は、前述の表に示す要件に加え、一時ディレクトリが存在するディスクに追加の領域を割り当てる必要があります。トランザクションがデータ・ストアの大きな領域を解放する際、TimesTenは一時ファイルを作成します。また、ttRepAdmin -duplicate操作、大規模な削除処理など、その他のTimesTenの操作では、ファイルをコピーする際に一時ディレクトリが使用されます。
TimesTenドキュメントには、追加の領域が必要です。
デフォルトの一時ディレクトリは、次のとおりです。
Windowsでは、TMP環境変数を設定して、一時ディレクトリの場所を設定する必要があります。UNIXでは、TMPDIR環境変数を設定して、一時ディレクトリの場所を変更できます。一時ディレクトリの場所を変更した場合は、一時ディレクトリの場所を示すように、デーモン起動スクリプトを更新する必要があります。スクリプトの場所については、この章のプラットフォーム別のインストールの説明を参照してください。
通常のアプリケーションに必要なスタック領域は、32-bitシステムでは16K、64-bitシステムでは17Kから55Kとなります。
CREATE CACHE GROUP、LOAD CACHE GROUP文など、TimesTen/Cacheの機能を使用する場合は、TimesTenをインストールするマシンに、少なくともOracle9i クライアントをインストールする必要があります。
TimesTenにOracleデータをキャッシュするには、Oracleの共有ライブラリが必要です。Oracle9i クライアント、Oracle EnterpriseまたはOracle Database 10g をインストールしておく必要があります。また、ORACLE_HOME環境変数を定義しておく必要があります。詳細は、「ORACLE_HOME環境変数」を参照してください。