Linux/UNIXでのインスタンスの作成: 基本
次の項の情報は、TimesTen完全インスタンスに関連しています。TimesTenクライアント・インスタンスの作成の詳細は、TimesTenクライアント・インスタンスの作成およびクライアントのみのインストール環境およびインスタンスを参照してください。
-
systemdをサポートしていないLinux/UNIXシステム
- System V initメカニズムとsystemdの両方をサポートするLinuxシステムであるが、SystemV initメカニズムを選択したか、インスタンス管理者が常にTimesTenデーモンを制御するように選択しました。
選択がsystemdの場合に完全インスタンスを作成する方法の詳細は、systemdを使用したTimesTenサービスの管理を参照してください。
-
installation_dir
/tt22.1.1.29.0/bin
ディレクトリにあるttInstanceCreate
ユーティリティを使用して、インスタンスを作成します。ttInstanceCreate
ユーティリティは、コマンドライン、ファイル、対話形式で実行できます。 -
Linuxカーネル・パラメータを構成します。
-
必要に応じて、
-install
オプションを指定してtimesten_home/bin/setuproot
スクリプトを実行して、システムの起動時にTimeTenデーモンが自動的に起動され、システムの停止時に自動的に停止されるようにします。このスクリプトは、System V initスクリプトを適切な場所(/etc/init.d
)にコピーします。システムの起動時およびシステムの停止時にインスタンス管理者がTimesTenデーモンを制御する場合は、このスクリプトを実行しないでください。
ノート:
-
ディストリビューションを解凍したユーザー(インストール環境の作成者)のみが、インストール環境からインスタンスを作成できます。
-
このユーザーは、TimesTenユーザー・グループのメンバーである必要があります。
-
このユーザーは、
ttInstanceCreate
ユーティリティを実行してインスタンスを作成します。 -
インスタンスの作成後、このユーザーはインスタンスのインスタンス管理者になります。
-
このユーザーは、このインスタンス、およびインストール環境に関連付けられている他のすべてのインスタンスのインスタンス管理者になることができる唯一のユーザーです。
次の各項の手順を実行します。
Linux/UNIXでのTimesTen完全インスタンスの作成
この項では、TimesTen完全インスタンスを作成する必要があるオプションについて説明します。
対話形式での完全インスタンスの作成
systemdをサービスとして使用している場合は、systemdを使用したTimesTenサービスの管理を参照してください。
この例では、ttInstanceCreate
ユーティリティを使用して完全インスタンスを作成します。コマンドラインにはオプションが指定されていません。
installation_dir
/tt22.1.1.29.0/bin
領域に移動し、そのディレクトリにあるttInstanceCreate
ユーティリティを実行します。ttInstanceCreate
ユーティリティは、インストール・ディレクトリから実行する必要があります。ユーザーの入力は太字で示されています。
ノート:
Oracle Clusterwareを使用したTimesTenのレプリケーションは、Oracle Linux for Armシステムではサポートされていません。Oracle Linux for Armを使用している場合、Oracle ClusterwareのメッセージがttInstanceCreate
出力に表示されません。
% installation_dir/tt22.1.1.29.0/bin/ttInstanceCreate
NOTE: Each TimesTen instance is identified by a unique name.
The instance name must be a non-null alphanumeric string, not longer
than 255 characters.
Please choose an instance name for this installation? [ tt221 ] myinstance
Instance name will be 'myinstance'.
Is this correct? [ yes ]
Where would you like to install the myinstance instance of TimesTen? [ /home/ttuser ] /scratch/ttuser
Creating instance in /scratch/ttuser/myinstance ...
NOTE: If you are configuring TimesTen for use with Oracle Clusterware, the
daemon port number must be the same across all TimesTen installations
managed within the same Oracle Clusterware cluster.
NOTE: All installations that replicate to each other must use the same daemon
port number that is set at installation time. The daemon port number can
be verified by running 'ttVersion'.
The default port number is 6624.
Do you want to use the default port number for the TimesTen daemon? [ yes ]
The daemon will run on the default port number (6624).
In order to use the cache features in any TimesTen databases
created within this instance, you must set a value for the TNS_ADMIN
environment variable. It can be left blank, and a value can be supplied later
using <install_dir>/bin/ttInstanceModify.
Please enter a value for TNS_ADMIN (s=skip)? [ ] s
What is the TCP/IP port number that you want the TimesTen Server to listen on? [ 6625 ]
Would you like to use TimesTen Replication with Oracle Clusterware? [ no ]
Would you like to use systemd to manage TimesTen? [ no ]
NOTE: The TimesTen daemon startup/shutdown scripts have not been installed.
The startup script is located here :
'/scratch/ttuser/myinstance/startup/tt_myinstance'
Run the 'setuproot' script :
/scratch/ttuser/myinstance/bin/setuproot -install
This will move the TimesTen startup script into its appropriate location.
The 22.1 Release Notes are located here :
'installation_dir/tt22.1.1.1.0/README.html'
Starting the daemon ...
TimesTen Daemon (PID: 9020, port: 6624) startup OK.
Instance created successfully.
TimesTen完全インスタンスが正常に作成されました。次のステップについては、インスタンス・ホーム・ディレクトリおよびサブディレクトリの確認に進んでください。
コマンドラインにオプションを指定することによるインスタンスの作成
この例では、ttInstanceCreate
ユーティリティを実行し、コマンドラインで名前、場所およびデーモンのポート番号を指定します。(-location
オプションで指定したディレクトリの名前は、ttInstanceCreate
ユーティリティを実行する前に存在している必要があります。)サポートされているオプションについては、Oracle TimesTen In-Memory DatabaseリファレンスのttInstanceCreateを参照してください。
%installation_dir
/tt22.1.1.29.0
/bin/ttInstanceCreate -name fullinstance1 -location /scratch/ttuser/fullinstance1 -daemonport 6824 Creating instance in /scratch/ttuser/fullinstance1 ... INFO: Mapping files from the installation to /scratch/ttuser/fullinstance1/install NOTE: The TimesTen daemon startup/shutdown scripts have not been installed. The startup script is located here : '/scratch/ttuser/fullinstance1/startup/tt_fullinstance1 Run the 'setuproot' script : /scratch/ttuser/fullinstance1/bin/setuproot -install This will move the TimesTen startup script into its appropriate location. The 22.1 Release Notes are located here : '/installation_dir
/tt22.1.1.29.0/README.html'
TimesTen完全インスタンスが正常に作成されました。次のステップについては、インスタンス・ホーム・ディレクトリおよびサブディレクトリの確認に進んでください。
-recordオプションを使用した対話形式でのインスタンスの作成
対話形式でインスタンスを作成する場合は、-record
オプションを使用して、バッチ・ファイルに対話形式のプロンプトと応答を記録できます。これは、バッチ・モードで追加のインスタンスを作成するためのテンプレートとして使用できます。詳細は、バッチ・ファイルで提供される情報からのインスタンスの作成を参照してください。
次の例では、-record
オプションを指定してttInstanceCreate
ユーティリティを使用する方法を示します。
%installation_dir
/tt22.1.1.29.0/bin
/ttInstanceCreate -record /swdir/TimesTen/ttinstances/instancecreatebatch
作成されたinstancecreatebatch
バッチ・ファイルには、ttInstanceCreate
に対する次のような入力が含まれています。
ノート:
Oracle Clusterwareを使用したTimesTenのレプリケーションは、Oracle Linux for Armシステムではサポートされていません。Oracle Linux for Armを使用している場合、Oracle Clusterwareのメッセージは表示されません。Please choose an instance name for this installation:ttuser1instanceint Is this correct:y Where would you like to install the ttuser1instanceint instance of TimesTen:/swdir/TimesTen/ttinstances Please enter a unique port number for the TimesTen daemon (<CR>=list):27100 Please enter a value for TNS_ADMIN (s=skip):s What is the TCP/IP port number that you want the TimesTen Server to listen on:27101 Would you like to use TimesTen Replication with Oracle Clusterware:n
バッチ・ファイルで提供される情報からのインスタンスの作成
ttInstanceCreate
の-batch
オプションを使用すると、指示を含むバッチ・ファイルを使用してインスタンスを作成できます。-record
オプションを指定してttInstanceCreate
を実行することで、このようなファイルを作成しました。詳細は、-recordオプションを使用した対話形式でのインスタンスの作成を参照してください。
この例では、最初に-record
オプションを使用して作成されたサンプル・バッチ・ファイルを使用します。次に、このサンプル・バッチ・ファイル(instancecreatebatch
)を使用してインスタンスを作成します。
ノート:
Oracle Clusterwareを使用したTimesTenのレプリケーションは、Oracle Linux for Armシステムではサポートされていません。Oracle Linux for Armを使用している場合、Oracle Clusterwareのメッセージは表示されません。Please choose an instance name for this installation:ttuser1instancebat Is this correct:y Where would you like to install the ttuser1instancebat instance of TimesTen:/swdir/TimesTen/ttinstances Please enter a unique port number for the TimesTen daemon (<CR>=list):29100 Please enter a value for TNS_ADMIN (s=skip):s What is the TCP/IP port number that you want the TimesTen Server to listen on:29101 Would you like to use TimesTen Replication with Oracle Clusterware:n
次に、インスタンスを作成します。
%installation_dir
/tt22.1.1.29.0/
bin/ttInstanceCreate -batch /swdir/TimesTen/ttinstances/instancecreatebatch
ttInstanceCreate
から次のような出力が表示されます。
NOTE: Each TimesTen instance is identified by a unique name. The instance name must be a non-null alphanumeric string, not longer than 255 characters. Instance name will be 'ttuser1instancebat'. Creating instance in /swdir/TimesTen/ttinstances/ttuser1instancebat ... TCP port 6624 is in use! NOTE: If you are configuring TimesTen for use with Oracle Clusterware, the daemon port number must be the same across all TimesTen installations managed within the same Oracle Clusterware cluster. ** The default daemon port (6624) is already in use or within a range of 8 ports of an existing TimesTen instance. You must assign a unique daemon port number for this instance. This installer will not allow you to assign another instance a port number within a range of 8 ports of the port you assign below. NOTE: All installations that replicate to each other must use the same daemon port number that is set at installation time. The daemon port number can be verified by running 'ttVersion'. INFO: installation group ownership (ttVersion) is 'timesten' In order to use the cache features in any TimesTen databases created within this instance, you must set a value for the TNS_ADMIN environment variable. It can be left blank, and a value can be supplied later using <install_dir>/bin/ttInstanceModify. NOTE: The TimesTen daemon startup/shutdown scripts have not been installed. The startup script is located here : '/swdir/TimesTen/ttinstances/ttuser1instancebat/startup/tt_ttuser1instancebat' Run the 'setuproot' script : /swdir/TimesTen/ttinstances/ttuser1instancebat/bin/setuproot -install This will move the TimesTen startup script into its appropriate location. The 22.1 Release Notes are located here : '/swdir/TimesTen/ttinstallations/fullinstall/tt22.1.1.29.0/README.html' Starting the daemon ... TimesTen Daemon (PID: 7725, port: 29100) startup OK.
TimesTen完全インスタンスが正常に作成されました。次のステップについては、インスタンス・ホーム・ディレクトリおよびサブディレクトリの確認に進んでください。
Oracle Clusterwareのための対話形式でのインスタンスの作成
この例では、インスタンスを対話形式で作成して、Oracle ClusterwareでTimesTenレプリケーションを有効にする方法を示します。Oracle Clusterwareを使用したTimesTenレプリケーションは、Oracle Linux for Armシステムではサポートされないため、Oracle Linux for Armを使用している場合はこの例を実行しないでください。
Oracle Clusterwareインストール環境へのパスの入力を求められたら、そのパスを指定するか、スキップできます。スキップする場合は、後でttInstanceModify -crs
オプションを使用してパスを指定できます。詳細は、インスタンスのOracle Clusterware構成の変更を参照してください。
この例では、Oracle Clusterインストール環境へのパスを/u01/app/
crs_releasedir
/grid
として示しています。ここで、crs_releasedir
はCRSリリースの変数です(たとえば、CRSリリースが19.1.0
の場合、19.1.0
に置き換えて、パスを/u01/app/19.1.0/grid
のようにできます)。
指定したディレクトリに有効なOracle Clusterwareインストール環境が存在する必要があります。
この例では、入力された値または選択されたデフォルトが太字で表示されています。
%installation_dir
/tt22.1.1.29.0/
bin/ttInstanceCreate NOTE: Each TimesTen instance is identified by a unique name. The instance name must be a non-null alphanumeric string, not longer than 255 characters. Please choose an instance name for this installation? [ tt221 ] crsinstance Instance name will be 'crsinstance'. Is this correct? [ yes ] yes Where would you like to install the crsinstance instance of TimesTen? [ /home/oracle ] /u02/ttinstances Creating instance in /u02/ttinstances/crsinstance ... NOTE: If you are configuring TimesTen for use with Oracle Clusterware, the daemon port number must be the same across all TimesTen installations managed within the same Oracle Clusterware cluster. NOTE: All installations that replicate to each other must use the same daemon port number that is set at installation time. The daemon port number can be verified by running 'ttVersion'. The default port number is 6624. Do you want to use the default port number for the TimesTen daemon? [ yes ] The daemon will run on the default port number (6624). INFO: installation group ownership (ttVersion) is 'oinstall' In order to use the cache features in any TimesTen databases created within this instance, you must set a value for the TNS_ADMIN environment variable. It can be left blank, and a value can be supplied later using <install_dir>/bin/ttInstanceModify. Please enter a value for TNS_ADMIN (s=skip)? [ ] s What is the TCP/IP port number that you want the TimesTen Server to listen on? [ 6625 ] Would you like to use TimesTen Replication with Oracle Clusterware? [ no ] yes A Clusterware installation was detected in /u01/app/crs_releasedir
/grid Please provide the path to the Oracle Clusterware installation on this machine (s=skip)? [ /u01/app/crs_releasedir/grid ] NOTE: The TimesTen Clusterware agent port must be the same on all nodes of the cluster. Please refer to the TimesTen documentation for additional information. Please enter a port number for the TimesTen Clusterware agent? [ 3574 ] Executing '/u01/app/crs_releasedir/grid/bin/olsnodes' ... Oracle Clusterware is currently configured on the following nodes : 1. tthost1 2. tthost2 NOTE: By default, all of the nodes listed above will be added to the TimesTen Replication with Oracle Clusterware configuration. You can also specify your own list of nodes based on the list above. Would you like to specify a node list for TimesTen Replication with Oracle Clusterware? [ no ] NOTE: The TimesTen daemon startup/shutdown scripts have not been installed. The startup script is located here : '/u02/ttinstances/crsinstance/startup/tt_crsinstance' Run the 'setuproot' script : /u02/ttinstances/crsinstance/bin/setuproot -install This will move the TimesTen startup script into its appropriate location. The 22.1 Release Notes are located here : '/u02/tt22.1.1.29.0/README.html' Starting the daemon ... TimesTen Daemon (PID: 11839, port: 6624) startup OK.
ノート:
Oracle Clusterwareのインストール環境がTimesTenによって検出されました。場所が確認されました。
インスタンス・ホーム・ディレクトリおよびサブディレクトリの確認
インスタンス・ホーム・ディレクトリおよびサブディレクトリは、情報を得るために確認できます。インスタンスを作成すると、各インスタンスの$TIMESTEN_HOME
の下に次のサブディレクトリが含まれています(このリストには含まれていないサブディレクトリもあります)。
-
bin
: そのインスタンスに適応するように調整された、インスタンス固有のTimesTenユーティリティおよび実行可能ファイルこれに含まれる
ttenv.sh
(またはttenv.csh
)によって、TimesTen環境の環境変数がセッションに適するように設定され、setuproot.sh
をrootとして実行することで、オペレーティング・システムが再起動されるたびにデータ・インスタンスを自動的に起動させることができます。ttenv
を実行すると、bin
ディレクトリもパスに追加されます。 -
conf
: TimesTenインスタンスの構成ファイルであるtimesten.conf
ファイルが含まれます -
diag
: デーモン・ログとエラー・ログを含む診断出力 -
info
: TimesTenインスタンスの永続状態が格納されているTimesTenデーモンの作業ディレクトリ -
install
: このインスタンスに関連付けられているインストール内容を参照するシンボリック・リンク。 -
plsql
: 次のサブディレクトリが含まれます。-
utl_file_dir
:UTL_FILE
パッケージを使用してPL/SQLブロックによる読取りや書込みが可能な唯一のディレクトリ
-
-
startup
: このサブディレクトリに格納されているスクリプトを/etc/init.d
に追加することで、そのインスタンスが、システムの起動時に自動的に起動され、システムのシャットダウン時に自動的に停止するようにできます。
Linuxカーネル・パラメータの構成
ノート:
TimesTenデーモンを自動的に管理するためにsystemdを選択した場合、systemdのカーネル・パラメータの構成の詳細について、systemdを使用したTimesTenサービスの管理を参照してください。shmmaxおよびshmallの構成
共有メモリー・セグメントの最大サイズ(shmmax
メモリー・カーネル・パラメータ)が、データベースの共有メモリー・セグメントの合計サイズを格納するのに十分な大きさになるように、Linux共有メモリーを構成する必要があります。TimesTen Classicでは、データベース全体が単一の共有メモリー・セグメントに保持されます。PL/SQLで使用される2番目のメモリー・セグメントもあります。
Linuxでは、共有メモリー・セグメントは複数のページで構成されており、デフォルトのページ・サイズは通常4KB (4096バイト)です。デフォルトのページ・サイズを確認するには、getconf
PAGESIZE
コマンドを実行します。
% getconf PAGESIZE 4096
次の共有メモリーのカーネル・パラメータを構成して、共有メモリー・セグメントのサイズを制御します。
-
shmmax
: 1つの共有メモリー・セグメントの最大サイズ(バイト単位)。この値は、データベースの共有メモリー・セグメントの合計サイズに対応できる十分な大きさである必要があります。 -
shmall
: ページで表された共有メモリー・セグメントの合計サイズ。この値は、ページ・サイズ(4kB)の倍数で表され、shmall * pagesize
はshmmax
の値以上にする必要があります。shmall
の値は、物理RAMの合計量以下に設定することをお薦めします。物理メモリーの合計量を表示するには、Linuxcat /proc/meminfo
コマンドを実行します。
ttShmSize
ユーティリティを使用して、共有メモリー・セグメントのサイズを決定します。ttShmSize
ユーティリティは、PermSize
、TempSize
、LogBufMB
およびConnections
接続属性(指定されたデータベース用)の値を使用してこのサイズを決定します。ttShmSize
ユーティリティの詳細はOracle TimesTen In-Memory DatabaseリファレンスのttShmSizeを参照し、各接続属性の詳細はOracle TimesTen In-Memory DatabaseリファレンスのPermSize、TempSize、LogBufMBおよびConnectionsを参照してください。
ttShmSize
ユーティリティを-connStr
オプションを指定して使用して、database1
DSNを使用して共有メモリー・セグメントのサイズを確認します。PermSize
値は32GB (32768MB)、TempSize
値は4GB (4096MB)、LogBufMB
値は1GB (1024MB)およびConnections
値は2048を指定します。 % ttShmSize -connstr "DSN=database1;PermSize=32768;TempSize=4096;LogBufMB=1024;Connections=2048"
The required shared memory size is 39991547720 bytes.
ノート:
-
ttShmSize
ユーティリティの-connStr
オプションでは、ユーザー.odbc.ini
またはシステムsys.odbc.ini
ファイルのいずれかにDSNが定義されている必要があります。任意のDSNを使用できます。-connStr
オプションで指定されていない接続属性の場合、ttShmSize
は、指定されたDSNに対してユーザー.odbc.ini
ファイルまたはシステムsys.odbc.ini
ファイルのいずれかに定義された設定を使用することに注意してください。接続属性が-connStr
オプションとユーザー.odbc.ini
ファイルまたはsys.odbc.ini
ファイルのいずれかのどちらにもない場合、ttShmSize
は接続属性のデフォルト値を使用します。 -
DSNは、ユーザー
.odbc.ini
ファイルまたはシステムsys.odbc.ini
ファイルのいずれかに追加できます。たとえば、database1
DSNを現在のオペレーティング・システム・ユーザーのユーザー.odbc.ini
ファイルに追加するには:% vi ~/.odbc.ini ... [database1]
shmmax
およびshmall
のサイズを設定するには:
ノート:
-
より大きい
shmmax
およびshmall
が他のアプリケーションで必要となる場合は、これらの例のこれらの設定を増やすことができます。 -
データベースのサイズが不明な場合は、物理メモリーのサイズの割合(80%など)に対応するように
shmmax
およびshmall
を設定できます。
HugePagesの構成
メモリー管理を効率化するためにHugePages
を構成できます。
構成後は、HugePages
に割り当てられたメモリーは、Linuxホスト上のRAM合計から取得され、他の用途には使用できません。また、HugePages
メモリー・セグメントは自動的にロックされ、ディスクにスワップできません。
HugePages
を構成するには、次のことを把握する必要があります。
-
データベースの共有メモリー・セグメントの最大サイズ
-
Linuxホストの
HugePages
ページ・サイズ -
インスタンス管理者のグループID
shmmaxおよびshmallの構成の項の例(shmmax
値は39,054,246kB)およびTimesTenユーザー・グループの作成の項の例(instanceadmin
ユーザーのグループIDは10000)を使用します:
-
合計共有メモリー・セグメントのサイズは39,054,246kBです。
-
HugePages
ページ・サイズは2048 KBです。(この値はプラットフォームごとに固定され、構成できません。)HugePagesページ・サイズを決定するには、Linux
cat /proc/meminfo|grep
Hugepagesize
コマンドを実行します。% cat /proc/meminfo | grep Hugepagesize Hugepagesize: 2048 kB
-
グループIDは10000です。
インスタンス管理者のグループIDを決定するには、
instanceadmin
ユーザーとしてログインし、Linuxid
コマンドを実行します。% id uid=55000(instanceadmin) gid=10000(g10000)groups=10000(g10000)
HugePages
を構成するには、次の手順を実行します:
ノート:
-
HugePages
は連続した使用可能メモリー領域への割当てが必要なため、ホストを再起動するまでは、要求された割当てが設定されないか、部分的にのみ設定される場合があります。/proc/meminfo
からHugePages_Total
およびHugePages_Free
の値を確認します。再起動するときには、ホストで十分なメモリーを使用できると想定し、すべて割り当てられます。 -
TimesTen PL/SQL共有メモリー・セグメントは、構成されているHugePagesの割当ての一部を使用します(
PLSQL_MEMORY_SIZE
接続属性の値によって決定されます)。詳細は、Oracle TimesTen In-Memory DatabaseリファレンスのPLSQL_MEMORY_SIZEを参照してください。 -
Linuxでは、
HugePages
セグメントは自動的にロックされ、メモリー・セグメントはディスク・スワップの対象になりません。したがって、HugePages
を構成する場合は、MemoryLock
接続属性を設定する必要はありません。
memlock設定の変更
/etc/security/limits.conf
ファイルのmemlock
エントリは、ユーザーがロックできるメモリー量を制御します。これらのエントリはシステム・レベルで設定され、MemoryLock
接続属性の設定とは異なります。
ノート:
systemdを使用してTimesTenサービスを管理している場合は、systemdサービス・ユニット構成ファイルでLimitMEMLOCK
設定を設定する必要があります。systemdは、/etc/security/limits.conf
ファイルの値を無視します。詳細は、systemdを使用したTimesTenサービスの管理を参照してください。
HugePages
が構成されている場合、memlock
値は、共有メモリー・セグメントのサイズに対応できるように大きくする必要があります。そうしないと、データベースがメモリーにロードされません。
たとえば、instanceadmin
ユーザーの場合、共有メモリー・セグメントの合計サイズが39,054,246kBと想定して、memlock
エントリを39054246
に設定します。
セマフォ値の設定
TimesTenでは、データベースへの最大接続数に上限があります。データベース接続は次のもので構成されます。
-
ユーザー接続: ユーザー・アプリケーションによって確立されます
-
システム接続: TimesTenによって内部的に確立されます(接続数を48に設定)
-
その他の必要な接続(接続数を107に設定)
これらの各接続には1つのセマフォが割り当てられ、データベースの合計セマフォは次のようになります。
Total semaphores = user connections (N) + system connections (48) + other required connections (107) Total semaphores = N + 155
セマフォ設定は、/etc/sysctl.conf
のkernel.sem
構成ディレクティブにあります。
kernel.sem = SEMMSL SEMMNS SEMOPM SEMMNI
ここで:
-
SEMMSL
は、配列ごとのセマフォの最大数です。この値は、最大接続数に関連します。この値は、155
と同時ユーザー接続数の合計に構成します。 -
SEMMNS
は、システム全体のセマフォの最大数です。ガイドラインとして、式SEMMNS
= (SEMMNI
* SEMMSL
)を使用します。ただし、実際にはSEMMNS
はSEMMNI
* SEMMSL
より大幅に小さい場合があります。 -
SEMOPM
は、semop
コールごとの最大処理数です。 -
SEMMNI
は、配列の最大数です。
次のステップに従って、SEMMSL
およびSEMMNI
設定を構成します。ユーザーがroot
であることを確認します。
ノート:
レプリケーションを使用している場合、マスター・データベースが存在する各ホストのLinuxプラットフォームでは、共有メモリーとセマフォに対して同様のカーネル設定が必要です。特に、SEMMSL
およびSEMMNI
の設定は、複製が実行される前に、アクティブ・スタンバイ・レプリケーション・スキームに参加するすべてのホストで十分な大きさである必要があります。フェイルオーバーの場合、スタンバイはアクティブに対応できる必要があります。
SHMMNIパラメータの設定
SHMMNI
値は、ホストが同時に作成できる共有メモリー・セグメントの数を制御します。TimesTenは、TimesTenデータベースの共有メモリー・セグメントと、PL/SQLの共有メモリー・セグメントを作成します。さらに、各クライアント/サーバー接続の間に割り当てられる小さな共有メモリー・セグメントがあります。この共有メモリー・セグメントは接続時に作成され、クライアント/サーバー接続がTimesTenデータベースから切断されるときに破棄されます。クライアント/サーバー接続ごとに1つの共有メモリー・セグメントがあります。
クライアント/サーバー接続の数を考慮するようにSHMMNI
パラメータ設定を構成する必要があります。SHMMNI
を、予想されるクライアント/サーバー接続の数より大きい値に設定します。(TimesTen共有メモリー・セグメント、PL/SQL共有メモリー・セグメント、および共有メモリーを使用するその他のプログラムも考慮してください。)たとえば、8000
のクライアント/サーバー接続があると予想される場合、適切な値は9000
以上です。TimesTenにはクライアント/サーバー接続数に含まれていないシステム接続があるため、9000
以上の値が適切です。
次のステップに従って、SHMMNI
設定を構成します。ユーザーがroot
であることを確認します。
ノート:
レプリケーションを使用している場合、マスター・データベースが存在する各ホストのLinuxプラットフォームには、同様のSHMMNI
カーネル設定が必要です。特に、複製が実行される前に、アクティブ・スタンバイ・レプリケーション・スキームに参加するすべてのホストでSHMMNI
設定が十分に大きい必要があります。フェイルオーバーの場合、スタンバイはアクティブに対応できる必要があります。
System V initスクリプトを使用したシステム起動時のインスタンスの自動起動
TimesTenデーモンをシステムの起動時に自動的に起動し、システムの停止時に自動的に停止するオプションがあります。
ノート:
このオプションを選択しない場合、インスタンス管理者は常にTimesTenデーモンを制御します。このオプションを有効にするには、root
ユーザーは-install
オプションを指定してTimesTenのsetuproot
スクリプトを実行します。スクリプトは、timesten_home
/bin
ディレクトリにあります。このスクリプトは、一連のスクリプトを/etc/init.d
ディレクトリにコピーします。
インスタンスの作成時のttInstanceCreate
の出力には、これに関する情報があります。たとえば、myinstance
という名前のインスタンスの場合は、次のようになります。
NOTE: The TimesTen daemon startup/shutdown scripts have not been installed.
The startup script is located here :
'/swdir/TimesTen/ttinstances/myinstance/startup/tt_myinstance'
Run the 'setuproot' script :
/swdir/TimesTen/ttinstances/myinstance/bin/setuproot -install
This will move the TimesTen startup script into its appropriate location.
setuproot
スクリプトは、インスタンス・ホーム・ディレクトリを示すTIMESTEN_HOME
環境変数の現在の設定に従って動作します。
この例では、timesten_home
/bin
はroot
ユーザーの現在のディレクトリです。
# echo$TIMESTEN_HOME
/swdir/TimesTen/ttinstances/myinstance #$TIMESTEN_HOME
/bin/setuproot -install Would you like to install the TimesTen daemon startup scripts into /etc/init.d? [ yes ] Copying /swdir/TimesTen/ttinstances/myinstance/startup/tt_myinstance to /etc/init.d Successfully installed the following scripts : /etc/init.d/tt_myinstance /etc/rc.d/rc0.d/K45tt_myinstance /etc/rc.d/rc1.d/K45tt_myinstance /etc/rc.d/rc2.d/S90tt_myinstance /etc/rc.d/rc3.d/S90tt_myinstance /etc/rc.d/rc5.d/S90tt_myinstance /etc/rc.d/rc6.d/K45tt_myinstance
インスタンスを破棄する前に、root
でsetuproot -uninstall
を実行する必要があります。
# $TIMESTEN_HOME
/bin/setuproot -uninstall
Would you like to uninstall the TimesTen daemon startup scripts in /etc/init.d?
[ yes ]
Successfully deleted the following scripts :
/etc/rc.d/rc0.d/K45tt_myinstance
/etc/rc.d/rc1.d/K45tt_myinstance
/etc/rc.d/rc2.d/S90tt_myinstance
/etc/rc.d/rc3.d/S90tt_myinstance
/etc/rc.d/rc5.d/S90tt_myinstance
/etc/rc.d/rc6.d/K45tt_myinstance
/etc/init.d/tt_myinstance
ノート:
インスタンスを破棄する前にsetuproot
-uninstall
を実行しない場合は、setuproot
-install
によって配置されたファイルを手動で削除する必要があります。