インスタンス作成時に必要となるディレクトリを準備します。
資源の配置の考え方
ディスク破損時の復旧や通常性能に影響があるために、資源の配置先のディスク構成は重要です。以下にディスク構成を決めるときのポイントを示します。
バックアップデータ格納先とデータ格納先の両方を失うとデータを復旧できなくなるので、これらは別のディスクに配置してください。
単一のディスク故障からの復旧時間をより短くするために、システムディスクとデータ格納先は、別のディスクに配置してください。
バックアップデータ格納先はデータ格納先の2倍以上の容量が必要なため、空き容量が最も大きいディスクに配置してください。
データ更新を大量に行う場合には、データ格納先、トランザクションログ格納先、および、バックアップデータ格納先(二重化されたトランザクションログ)への書き込み負荷も大きくなります。そのため性能を考慮して、これらはすべて別のディスクに配置することを推奨します。
注意
各オペレーティングシステムで提供されるボリュームマネージャを使用する場合には、ファイルシステムがどの物理ディスク上に作成されているかを意識し、例えば、データ格納先とバックアップデータ格納先が異なる物理ディスク上に配置されるようにしてください。
資源 | 役割 |
---|---|
データベースクラスタ | データベース格納領域です。インスタンスで管理されるデータベースの集合体です。 |
テーブル空間 | データベースクラスタとは別領域に、テーブルファイル、インデックスファイルを保持します。 |
トランザクションログ | クラッシュリカバリ、ロールバックに備えたログ情報を保持します。 |
アーカイブログ | リカバリに備えたログ情報を保持します。 |
コアファイル | Symfoware Serverのプロセスで異常が発生した場合に出力するSymfoware Serverプロセスのコアファイルです。 |
ディスク配置の例を以下に示します。
ディスク数 | ディスク | 配置 |
---|---|---|
3本 | システムディスク | Symfoware Serverプログラム |
コアファイル | ||
接続されている物理ディスク | データ格納先、トランザクションログ格納先 | |
接続されている物理ディスク | バックアップデータ格納先 | |
2本 | システムディスク | Symfoware Serverプログラム |
コアファイル | ||
データ格納先、トランザクションログ格納先 | ||
接続されている物理ディスク | バックアップデータ格納先 |
WebAdminを使ってインスタンスを生成する場合には、以下の制約のもとに、インスタンス生成の時点でのすべてのディスクの状態と資源の配置先の考え方の1から3 を考慮した最適な配置が提案されます。提案された配置とは異なる配置を指定することも可能です。
マウントポイントに各国語文字を含まないこと
マウントポイントにインスタンス管理者の読み書き実行権が付与されていること
参考
各ファイルシステムのマウントポイントが、異なるパーティションやスライスに配置されていたとしても、同一の物理ディスクであるかどうかを検査します。
各オペレーティングシステムで提供されるボリュームマネージャを使用している場合には同一の物理ディスク上に作成されているかは検査しません。
ディレクトリの準備
準備するディレクトリは、インスタンスの作成方法により異なります。
事前に準備するディレクトリを、以下に示します。
準備するディレクトリ | WebAdminを | initdbコマンドを |
---|---|---|
データ格納先用のディレクトリ | ○ (注1) | ○ |
バックアップデータ格納先用のディレクトリ | ○ (注1) | △ |
トランザクションログ格納先用のディレクトリ | △ (注1) (注2) | △ |
コアファイルの出力先用のディレクトリ | - (注3) | △ |
○ : 必須
△ : 任意
- : 不要
注1) WebAdminがディレクトリを自動で作成します。
注2) デフォルトでは、データ格納先のディレクトリ内に作成します。データベースのデータとトランザクションログのI/O負荷を分散したい場合は、データ格納先用のディレクトリとトランザクションログ格納先用のディレクトリを異なるディスクに配置することを検討してください。
注3) デフォルトでは、“/var/tmp/symfo_バージョン/インスタンス管理者_インスタンス名/core”に出力します。出力先を変更する場合は、postgresql.confのcore_directoryパラメータおよびcore_contentsパラメータで指定します。これらのパラメータの設定内容は、“運用ガイド”の“パラメータ”を参照してください。
注意
各ディレクトリは以下の条件を満たす必要があります。
ディレクトリの所有者が、インスタンス管理者となるOSのユーザーアカウントであること
ディレクトリに書き込み権があること
ディレクトリ内が空の状態であること
WebAdminを使用する場合は、NFS(Network File System)によりマウントしたディレクトリを使用することはできません。
OSのスーパーユーザーが、データベースのデータを格納するディレクトリを“/database/inst1”として新規に作成し、ディレクトリの所有者をOSのユーザーアカウント“symfo”に変更する例を示します。
# mkdir /database/inst1 # chown symfo:symfo /database/inst1 # chmod 700 /database/inst1