保管データベースにSymfowareを使用する場合は、以下の手順で保管データベースの環境設定を行います。なお、保管データベースの環境設定はスーパーユーザで行います。
作業項目 | クラスタ環境での作業 |
---|---|
(1) ディスクスペースの見積もり | - |
(2) カーネルパラメタの編集 | 両ノード |
(3) 環境変数の設定 | 両ノード |
(4) パーティションの作成 | 運用系ノード |
(5) udevのブロックデバイス名を特定 | - |
(6) シンボリックリンクの作成 | - |
(7) RDBディレクトリの作成 | - |
(8) RDB構成パラメタファイルの作成 | 両ノード |
(9) ポート番号の定義 | 両ノード |
(10) システム用の動作環境ファイルの複写 | 両ノード |
(11) システム用の動作環境ファイルの編集(フォルダの共有運用を行う場合のみ) | 両ノード |
(12) 保管データベースの作成(データベース構築スクリプトの実行) | 運用系ノード |
(13) データベースの起動/停止の設定 | 両ノード |
(14) 保管データベースの接続設定 | 両ノード |
クラスタ環境での保管データベースの環境設定は運用系ノードで(5)~(7)を除く(2)~(14)を行った後に、待機系ノードで行ってください。また、待機系ノードで作業するときは、共有ディスクを待機系側に切り替えてから作業する必要があります。
切り替え方法などの詳細は、“PRIMECLUSTERのマニュアル”を参照してください。
上記の作業手順と作業するサーバが以下のように異なります。1.~14.の順番に従って環境設定を行ってください。
作業項目 | 作業するサーバ | |
---|---|---|
データベースサーバ | List Worksサーバ | |
(1) ディスクスペースの見積もり | 1. | - |
(2) カーネルパラメタの編集 | 2. | - |
(3) 環境変数の設定 | 3. | - |
(4) パーティションの作成 | 4. | - |
(5) udevのブロックデバイス名を特定 | 5. | - |
(6) シンボリックリンクの作成 | 6. | - |
(7) RDBディレクトリの作成 | 7. | |
(8) RDB構成パラメタファイルの作成 | 8. | - |
(9) ポート番号の定義 | 9. | - |
(10) システム用の動作環境ファイルの複写 | 10. | - |
(11) システム用の動作環境ファイルの編集(フォルダの共有運用を行う場合のみ) | 11. | - |
(12) 保管データベースの作成(データベース構築スクリプトの実行) | 12. | - |
(13) データベースの起動/停止の設定 | 13. | - |
(14) 保管データベースの接続設定 | - | 14. |
ここでは、手順の概略を説明しています。Symfowareの環境設定の詳細は、“Symfowareのマニュアル”を参照してください。
クラスタシステムを使用して、保管データベースをクラスタ運用することを推奨します。
Symfowareのクラスタ運用を行う場合の環境設定の詳細は、“Symfowareのマニュアル”を参照してください。
保管データベースの運用には、運用に必要な資源ごとにパーティション(ディスクの区画)が必要です。パーティションに必要なサイズと定義ファイルを以下に示します。
資源 | サイズ (注) | 定義ファイル | ディスク・パーティション |
---|---|---|---|
RDBディクショナリ | 100MB以上 | createLWDB.sh | ローデバイス |
RDBディレクトリファイル、パフォーマンスデータ格納ファイル | 600MB以上 | LWDB.cfg | ファイルシステム |
ログ管理ファイル | 1500MB以上 | LWDB.cfg | ローデバイス |
データベーススペース | Database見積もりツールの算出値のサイズ以上が必要です。 | createLWDB.dat | ローデバイス |
注:容量の拡張に備え、ある程度余裕のあるサイズを見積もることを推奨します。
例)RDBディクショナリ:1GB RDBディレクトリファイル、パフォーマンスデータ格納ファイル:1GB ログ管理ファイル、テンポラリログファイル:2GB データベーススペース:5GB
保管データベースの運用に必要なディスク容量の見積もりは、Database見積もりツールを使用して行います。見積もりによって求めた値は、“3.4.4 保管データベース作成用のファイル編集<List Works組込データベース、またはSymfowareを使用する場合のみ>”で使用します。
Database見積もりツール(dbmitsumori.xls)は、List Worksのインストールメディアに格納されています。
Linuxのカーネルパラメタを編集する必要があります。
「/etc/sysctl.conf」ファイルを編集し、カーネルパラメタ値を変更します。
パラメタ名 | 必要数 | 扱い |
---|---|---|
kernel.shmmax | 43632640 | 最大値 |
kernel.shmmni | 160 | 加算 |
kernel.sem | (注) | - |
kernel.msgmax | 128 | 最大値 |
kernel.msgmnb | 4096 | 最大値 |
kernel.msgmni | 100 | 加算 |
kernel.shmall | 10908160 | 加算 |
最大値:すでに設定されている値と比較して、大きい方の値を設定してください。
加算:すでに設定されている値に、必要数を加算した値を設定してください。
以下の形式で指定します。
kernel.sem = para1 para2 para3 para4
para1 para2 para3 para4に下表の値を設定してください。
パラメタ名 | 必要数 | 扱い |
---|---|---|
para1 | 50 | 最大値 |
para2 | 960 | 加算 |
para3 | 変更する必要はありません。 | - |
para4 | 310 | 加算 |
現在設定されているカーネルパラメタ値は、sysctlコマンドで確認できます。
# /sbin/sysctl -a
以下のコマンドを実行、またはシステムを再起動して、カーネルパラメタ値の変更をLinuxカーネルへ反映します。
# /sbin/sysctl -p /etc/sysctl.conf
Symfowareのコマンド、およびmanコマンドを使用するために必要な以下の環境変数を設定します。この環境変数は、保管データベースの作成に必要となります。
環境変数 | 設定値 |
---|---|
RDBNAME | 「LWDB」を設定します。 |
MANPATH | 「/opt/FJSVrdb2b/man」を追加します。 |
LD_LIBRARY_PATH | 「/opt/FJSVrdb2b/lib」を追加します。 |
PATH | 「/opt/FJSVrdb2b/bin」を追加します。 |
「ja_JP.UTF-8」を設定します。 | |
環境変数LC_ALLが設定されている場合は、環境変数LANGと同じロケール名に変更します。 |
参考
RDBNAME(LWDB)は、原則、固定です。Symfowareを設定する際に、既存のRDBNAMEに「LWDB」が使われていない場合は、変更する必要はありません。すでにSymfowareを使用してマルチRDB運用を行っている場合に、設定する「RDBNAME」が重複するようでしたら、重複しない「RDBNAME」を設定してください。
RDBNAMEを設定する例を以下に示します。
# RDBNAME=LWDB ; export RDBNAME
PATHを追加する例を以下に示します。
# PATH=/opt/FJSVrdb2b/bin:$PATH ; export PATH
List Worksの保管データベースに必要なパーティションを、partedコマンドを利用して作成します。
ディスクから必要な大きさのパーティションを切り出してブロックデバイスを作成します。ブロックデバイスに対してシンボリックリンクを設定することで、ローデバイスとして使用します。
List Worksのデータベースの運用に必要な、以下の資源を格納するローデバイスを作成します。
ローデバイスは資源ごとに作成する必要があります。
RDBディクショナリ
ログ管理ファイル、テンポラリログファイル
データベーススペース
なお、ブロックデバイスに対して初期化を行う必要はありません。
各パーティションのサイズについては、“(1) ディスクスペースの見積もり”を参照してください。partedコマンドの詳細については、“Linuxシステムのマニュアル”を参照してください。
ポイント
各資源に対応するパーティションは、以降の作業の資源作成時に必要となります。各資源と対応するパーティションを控えることを推奨します。
(5) udevのブロックデバイス名を特定
ディスクのパーティションに対応するudevのブロックデバイス名を特定します。
udevのブロックデバイス名には、by-id名とby-path名があります。なお、特定したudevのブロックデバイスとディスクパーティションの情報は対応表などを作成することを推奨します。
by-id使用時のディスク交換やby-path使用時の接続構成変更により、udevのブロックデバイス名が変更になる可能性があります。udevのブロックデバイス名が変更になった場合、本設定およびアクセス権の設定ルールの変更を実施してください。
udevのブロックデバイス名の詳細については、“Linuxシステムのマニュアル”を参照してください。
ディスク(/dev/sda5)に対するudevのブロックデバイス名の特定をする場合の例を、以下に示します。
なお、/dev/sda5のudevのブロックデバイス名は、scsi-3600508e000000000a49181f95a10550epart5となります。
# cd /dev/disk/by-id # ls -l lrwxrwxrwx 1 root root 9 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -> ../../sda lrwxrwxrwx 1 root root 10 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -part1 -> ../../sda1 lrwxrwxrwx 1 root root 10 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -part2 -> ../../sda2 lrwxrwxrwx 1 root root 10 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -part3 -> ../../sda3 lrwxrwxrwx 1 root root 10 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -part4 -> ../../sda4 lrwxrwxrwx 1 root root 10 12 月 17 10:42 scsi-3600508e000000000a49181f95a10550e -part5 -> ../../sda5
ディスク(/dev/sda5)に対するudevのブロックデバイス名の特定をする場合の例を以下に示します。
なお、/dev/sda5のudevのブロックデバイス名は、/dev/disk/by-path/pci-0000:00:10.0-scsi-0:0:0:0-part5となります。
# cd /dev/disk/by-path # ls -l lrwxrwxrwx 1 root root 9 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0 -> ../../sda lrwxrwxrwx 1 root root 10 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0-part1 -> ../../sda1 lrwxrwxrwx 1 root root 10 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0-part2 -> ../../sda2 lrwxrwxrwx 1 root root 10 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0-part3 -> ../../sda3 lrwxrwxrwx 1 root root 10 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0-part4 -> ../../sda4 lrwxrwxrwx 1 root root 10 12 月 17 10:42 pci-0000:00:10.0-scsi-0:0:0:0-part5 -> ../../sda5
(6) シンボリックリンクの作成
udevのブロックデバイスへシンボリックリンクを作成します。
シンボリックリンクの作成先は、/dev_lwdbディレクトリを作成後、/dev_lwdb配下に作成します。
/dev_lwdbディレクトリのアクセス権は、データベース管理者からアクセス可能なようにchownコマンドおよびchmodコマンドを使用してアクセス権の設定を行ってください。
# mkdir /dev_lwdb # chmod 700 /dev_lwdb # chown root:root /dev_lwdb
udevのブロックデバイス(/dev/disk/by-id/scsi-3600508e000000000a49181f95a10550e-part5)へシンボリックリンク(raw1)を作成する場合の例を、以下に示します。なお、/dev_lwdb/raw1をローデバイス名と呼びます。
lrwxrwxrwx 1 root root 10 12 月 17 10:42 raw1 -> /dev/disk/by-id/scsi-3600508e000000000a49181f95a10550e-part5 # cd /dev_lwdb # ln -s /dev/disk/by-id/scsi-3600508e000000000a49181f95a10550e-part5 raw1 # ls -l
udevのブロックデバイス(/dev/disk/by-path/pci-0000:00:10.0-scsi-0:0:0:0-part5)へシンボリックリンク(raw1)を作成する場合の例を、以下に示します。なお、/dev_lwdb/raw1をローデバイス名と呼びます。
# cd /dev_lwdb # ln -s /dev/disk/by-path/pci-0000:00:10.0-scsi-0:0:0:0-part5 raw1 # ls -l lrwxrwxrwx 1 root root 10 12 月 17 10:42 raw1 -> pci-0000:00:10.0-scsi-0:0:0:0-part5
RDBディレクトリファイル、パフォーマンスデータ格納ファイルを配置するディレクトリを作成します。このディレクトリに、管理者の書き込み権を付与してください。
クラスタシステムで運用する場合は、この作業は不要です。
# mkdir /LWSFW
注意
すでに「/LWSFW」が使用されている場合は、使用されていないマウントポイントを作成してください。
また、以降の説明では、「/LWSFW」を、変更したマウントポイント名に置き換えてお読みください。
List WorksサーバにあるRDB構成パラメタファイルを、データベースサーバに複写します。複写先のRDB構成パラメタファイルに、複写元と同じアクセス権を付与してください。
複写元:/opt/FJSVlw-sv/dbsetup/symfo/LWDB.cfg
複写先:/opt/FJSVrdb2b/etc/LWDB.cfg
注意
“(3) 環境変数の設定”において、RDBNAMEに「LWDB」以外を設定した場合は、複写先のRDB構成パラメタファイルのファイル名を、LWDB.cfgから「RDBNAMEに設定したRDBシステム名.cfg」に変更してください。また、以降の説明では、LWDB.cfgを、変更したファイル名に置き換えてお読みください。
複写したLWDB.cfgファイルを、テキストエディタで開いて編集します。
#################################################################### # RDBディレクトリファイル(非クラスタ運用の場合) ← (注1) RDBDIRSPACE1=/LWSFW/rdbdir RDBDIRSPACE2=/LWSFW/rdbdir # RDBディレクトリファイル(クラスタ運用の場合) ← (注2) #RDBDIRSPACE=/dev_lwdb/raw? # RDBLOG=512,512 RDBEXTMEM=42610 RDBCNTNUM=712 RDBPRJCODE=0xdb RDBSYSBUF=/etc/opt/FJSVlw-sv/dbsetup/symfo RDBSQLENV=/opt/FJSVrdb2b/etc/lwfssqlenv RDBDBSNUM=32 RDBNETDBSNUM=32 RDBSYSTEMID=25 ← (注3) RDBLOGMANAGE=/dev_lwdb/raw? ← (注4) # #↓RDBCORE,RDBREPORT,RDBPMについて ← (注5) # クラスタ運用の場合、ローカルディスク上のディレクトリを指定してください RDBCORE=/LWSFW/core RDBREPORT=/LWSFW/core RDBPM=/LWSFW/rdbpm
非クラスタシステムで運用する場合は、RDBディレクトリファイル格納先であるディレクトリを指定します。
RDBDIRSPACE1=/LWSFW/rdbdir RDBDIRSPACE2=/LWSFW/rdbdir
クラスタシステムで運用する場合は、以下の作業を行ってください。
・先頭の#を削除します。
・RDBディレクトリファイルの配置先であるパーティションを指定します。
RDBDIRSPACE=/dev_lwdb/raw?
・RDBDIRSPACE1、RDBDIRSPACE2の記述行を削除します。
List Worksのデータベース以外で、このシステムIDを使用している場合は、1~31の間で使用していないIDに変更します。
ログ管理ファイルの配置先であるパーティションを指定します。
RDBLOGMANAGE=/dev_lwdb/raw?
異常終了時のダンプ、メッセージログファイルおよびパフォーマンスデータ格納ファイルの出力先であるディレクトリを指定します。
RDBCORE=/LWSFW/core RDBREPORT=/LWSFW/core RDBPM=/LWSFW/rdbpm
なお、クラスタシステムで運用する場合は、ローカルディスク上のディレクトリを指定してください。
注意
ディスクのデバイス名の形式(/dev_lwdb/raw?)については、システムやディスク装置によって異なる場合があります。
使用するシステムやディスク装置に合わせた形式で指定してください。
編集したファイルに合わせて、必要なディレクトリを作成します。作成した各ディレクトリに、管理者の書き込み権を付与してください。
非クラスタシステムで運用する場合は、RDBDIRSPACE1、RDBDIRSPACE2、RDBCORE、RDBREPORT、RDBPMに指定したディレクトリを作成します。
# mkdir /LWSFW/rdbdir # mkdir /LWSFW/core # mkdir /LWSFW/rdbpm
クラスタシステムで運用する場合は、RDBCORE、RDBREPORT、RDBPMに指定したディレクトリを作成します。
物理メモリに300MB以上の余裕がある場合は、以下にあるrdbbufファイルを、テキストエディタで開いて編集します。
/etc/opt/FJSVlw-sv/dbsetup/symfo/rdbbuf
値を「43170」に変更します。
List Worksサーバにある以下のファイルを、データベースサーバの同じディレクトリに複写します。複写先のファイルに、複写元と同じアクセス権を付与してください。
データベースサーバに以下のディレクトリが存在しない場合は、同じディレクトリを作成します。
/etc/opt/FJSVlw-sv/dbsetup/symfo/rdbbuf
(9) ポート番号の定義
「/etc/services」ファイルに、使用するポート番号を定義する必要があります。ポート番号は1024~32767の範囲で、未使用の値を指定してください。
LWDB 26551/tcp # List Works database
List Worksサーバにあるシステム用の動作環境ファイルを、データベースサーバに複写します。複写先のファイルに、複写元と同じアクセス権を付与してください。
複写元:/opt/FJSVlw-sv/dbsetup/symfo/lwfssqlenv
複写先:/opt/FJSVrdb2b/etc/lwfssqlenv
(11) システム用の動作環境ファイルの編集(フォルダの共有運用を行う場合のみ)
フォルダの共有運用を行う場合、システム用の動作環境ファイルを編集します。
システム用の動作環境ファイルの詳細については、“Symfowareマニュアル”を参照してください。
複写したシステム用の動作環境ファイルを、テキストエディタで開きます。
「MAX_CONNECT_TCP」に、以下の計算方法で算出された値を設定します。
(64 + サーバ機能APIおよびサーバコマンドの同時起動数(注1)) × (リスト管理サーバのサーバ数)
注1:サーバ機能APIおよびコマンドを使用しない場合は、同時起動数に「10」を指定します。
例:リスト管理サーバ数が5、サーバ機能API・サーバコマンドを使用しない場合
(64+10)×5 = 370
256を設定します。
算出された値を設定します。
ポイント
今後、サーバを追加する予定がある場合には、あらかじめ接続数を大きめに見積もり、大きめの値に設定しておくことをお勧めします。
(12) 保管データベースの作成(データベース構築スクリプトの実行)
データベース構築スクリプトを使用してデータベースを作成します。
作成手順を以下に示します。
以下を実行し、List Worksのインストールディレクトリにある、データベース構築スクリプトが格納されているディレクトリに移動します。
cd /opt/FJSVlw-sv/dbsetup/symfo/create
注意
データベース構築スクリプトは、移行時や容量拡張時も使用します。必要に応じて、データベース構築スクリプトをバックアップしてください。
以下のファイルをテキストエディタで開いて編集します。
createLWDB.sh
createLWDB.dat
createLWDB.datの編集箇所については、“3.4.4 保管データベース作成用のファイル編集<List Works組込データベース、またはSymfowareを使用する場合のみ>”を参照してください。
createLWDB.shは、以下の編集を行います。
# -------------------------------------------------------------- # RDBディクショナリの作成先 # -------------------------------------------------------------- DBDICDIR=/dev_lwdb/raw? ← (注1)
「/dev_lwdb/raw?」にRDBディクショナリ用のパーティションを指定してください。
注意
ディスクのデバイス名の形式(/dev_lwdb/raw?)については、システムやディスク装置によって異なる場合があります。
使用するシステムやディスク装置に合わせた形式で指定してください。
List Worksサーバにあるデータベース構築スクリプトが格納されているディレクトリを、データベースサーバに複写します。複写先のファイルに、複写元と同じアクセス権を付与してください。
複写元:/opt/FJSVlw-sv/dbsetup/symfo/create
複写先の例:/work/create
データベース構築スクリプト(createLWDB.sh)を、手順2の複写先ディレクトリで実行します。
実行例を以下に示します。
# cd /work/create # ./createLWDB.sh
参考
List Works標準のデータベース構築スクリプトを実行した場合の所要時間の目安は、15分です。
なお、所要時間はサーバスペックなどにより左右されますので、ご注意ください。
データベース構築スクリプトの実行が完了したら、ログファイルを参照して、データベースの構築中にエラーが発生していないことを確認します。ログファイルは、データベース構築スクリプトの実行カレントディレクトリに出力されます。
例)/work/create/dbsetuplog.txt
データベース構築スクリプトの実行中に出力される可能性の高いメッセージを、“付録H データベース環境設定時のメッセージ”に抜粋して説明しています。参考にしてください。また、詳細なメッセージの説明については、“Symfowareのマニュアル”を参照してください。
Symfoware Server Enterprise Extended Edition を使用している場合は、パラメタ設定スクリプト(setsysparamLWDB.sh)を、手順2の複写先ディレクトリで実行します。
実行例を以下に示します。
# ./setsysparamLWDB.sh
パラメタ設定スクリプトを実行すると、ログファイル(dbsetuplog.txt)がスクリプトの実行カレントディレクトリに出力されます。
Symfoware Server Enterprise Extended Editionを使用している場合は、ログファイル(dbsetuplog.txt)を参照して、パラメタ設定スクリプトの実行時にエラーが発生していないことを確認します。
パラメタ設定スクリプトの実行中に出力される可能性の高いメッセージを、“付録H データベース環境設定時のメッセージ”に抜粋して説明しています。参考にしてください。また、詳細なメッセージの説明については、“Symfowareのマニュアル”を参照してください。
スクリプトの実行が完了したら、データベースへの接続確認を行います。
以下の構文(rdbexecsql -s RDBシステム名.データベース名)を入力して実行します。データベース名は、データベース構築スクリプトに定義されています。
# rdbexecsql -s LWDB.LWDB
「SQL>」と表示されたら、以下の構文を入力して実行します。
SQL> SELECT * FROM LW.LW_USER
以下のような結果が表示されれば、データベースは正常に構築されています。
SQL> SELECT * FROM LW.LW_USER Number of records:0 SQLSTATE:00000 SQLMSG:JYP2001I 正常に終了しました. SQL>
エラーが発生した場合は、Symfowareのエラーメッセージが表示されます。
エラーメッセージが表示された場合は、データベースの作成に失敗している可能性がありますので、“付録H データベース環境設定時のメッセージ”を参考にしてください。
エラーメッセージの詳細は、“Symfowareのマニュアル”を参照してください。
以下の構文を入力して実行し、確認で使用したrdbexecsqlコマンドを終了します。
SQL> quit
以下のメッセージが表示されることを確認してください。
rdb:INFO:qdg02200i:rdbexecsqlが正常終了しました 復帰コード 00 (システム名=LWDB)
データベースの起動/停止の方法には、自動起動/停止を設定する方法と手動で起動/停止する方法があります。以下に方法を説明します。
以下のスクリプトを実行し、データベースの自動起動/停止の設定を行います。
# cd /opt/FJSVlw-sv/dbsetup/symfo # ./set_rclwdb.sh
RDBNAMEを変更している場合、スクリプトを実行後、以下のファイルに記述されているRDBNAMEを環境に合わせて修正します。
/etc/rc.d/init.d/rc_lwdb
参考
手動でSymfowareのサービスを起動/停止することができます。
“(3) 環境変数の設定”に掲載されている環境変数を設定します。
以下のコマンドを実行します。
# rdbstart
“(3) 環境変数の設定”に掲載されている環境変数を設定します。
以下のコマンドを実行します。
# rdbstop
保管データベースとの接続のために、List Worksサーバ上のデータベース接続用設定ファイル(/opt/FJSVlw-sv/dbsetup/symfo/lwfssqlenvc)をテキストエディタで開いて編集します。
以下の行頭の「セミコロン(;)」を削除し、太字下線の部分を動作環境に合わせて変更します。
;SERVER_SPEC=(RDB2_TCP,LWDB,LWDB,hostname,26551)
データベースサーバのホスト名(注)に変更します。
注:データベースサーバがIPv6環境の場合には、IPv6アドレスに対応づけられたホスト名を指定してください。
“(9) ポート番号の定義”で指定したポート番号を指定します。