WebAdminは、以下の設定ファイルに記述された内容に従ってデータベースを運用・管理します。
Symfoware Serverの動作環境を規定する各種情報を保持します。
クライアント認証に関する各種情報を保持します。
これらの設定ファイルは、WebAdminによるインスタンス作成時および設定内容を変更したときに情報が書き込まれ、データ格納先に配置されます。そして、インスタンスの起動時、または[設定]メニューから各情報を表示した場合に、読み込まれます。
各設定ファイルの内容は、テキストエディタで直接編集もできます。
参照
パラメータの詳細については、“PostgreSQL文書”の“サーバの管理”の“サーバの設定”および“クライアント認証”を参照してください。
WebAdminで変更できるpostgresql.confのパラメータを以下に示します。
タブ名 | WebAdminでの項目名 | パラメータ名 |
---|---|---|
文字コード | 文字コードの変換 | client_encoding |
メッセージロケール | lc_messages | |
通信 | ポート番号 | port |
最大接続数 | max_connections | |
SQLオプション | expr = NULL形式の解釈 | transform_null_equals |
DATE型の出力形式 | DateStyle (注) | |
INTERVAL型の出力形式 | IntervalStyle | |
浮動小数点値の検索結果の精度 | extra_float_digits | |
トランザクションのISOLATIONレベル | default_transaction_isolation | |
通貨の表現形式 | lc_monetary | |
日時の表現形式 | lc_time | |
数値の表現形式 | lc_numeric | |
使用メモリ | ソート処理に使用するメモリ量(単位:KB) | work_mem |
データベースのバッファサイズ(単位:KB) | shared_buffers |
注) 出力書式指定に“Postgres”を指定した場合、PostgreSQL文書に記載してある“Wed Dec 17 1997”という形式ではなく、“12-17-1997”という形式で出力されます。
WebAdminがインスタンス起動時に設定しているパラメータを以下に示します。
これらのパラメータはpostgresql.confに指定しても有効になりません。
パラメータ名 | 設定値 |
---|---|
listen_addresses | * |
log_destination | 'stderr,syslog' |
logging_collector | on |
log_line_prefix | '%e: %t [%p]: [%l-1] user = %u,db = %d,remote = %r app = %a ' |
log_directory | '/var/tmp/symfo_バージョン/インスタンス管理者名_インスタンス名/log' |
log_filename (注1)(注2) | 'logfile-%a.log' |
log_file_mode | 0600 |
log_truncate_on_rotation | on |
log_rotation_age | 1d |
注1) サーバログは曜日ごとのファイルに分割され1週間でローテションされます。
注2) インスタンス停止中に日付が変わると、古いログが削除されず残存します。
ディスク容量を圧迫する原因になるため、不要な古いログを手動で削除してください。
WebAdminがインスタンス作成時にマシンの搭載メモリ量に応じて自動的に設定しているpostgresql.confのパラメータを以下に示します。
パラメータ名 | 設定値 |
---|---|
shared_buffers | マシンの搭載メモリ量の30% |
work_mem | マシンの搭載メモリ量の30% ÷ max_connections ÷ 2 |
effective_cache_size | マシンの搭載メモリ量の75% |
maintenance_work_mem | マシンの搭載メモリ量の10% ÷ (1 + autovacuum_max_workers) |
上記のパラメータに設定する値は、インスタンスにアクセスするアプリケーションやコマンドの数、処理内容など、業務運用中のアクセス量の増加や性能への影響を予測して決める必要があります。また、実際のデータベースサーバでは、Symfoware Server以外の他のソフトウェアも稼働している場合があり、データベースと他のソフトウェアとの優先度やメモリの分配量を決める必要があります。
WebAdminは、上記のような難しいパラメータの設定を、マシンの搭載メモリ量を基準にして自動的に設定しています。これにより、マシンの持つメモリを最大限に活用して業務運用中の変動にも耐えられるようにしています。
したがって、他のソフトウェアや別のインスタンスとメモリ資源を効果的に分配し、互いに影響しあわないようにするためには、上述の影響を予測してパラメータの設定値を決めた上で、設定を行うようにしてください。パラメータの設定値と必要な考慮事項は、“PostgreSQL文書“の“サーバの管理”の“資源の消費”の“メモリ”、および、“問い合わせ計画”の“プランナコスト定数”を参照してください。
パラメータの設定値の変更は、WebAdminの[設定]メニューまたはテキストエディタで直接編集することにより実施してください。
なお、インスタンスを追加する場合は、既存のインスタンスも含め、パラメータの設定値を決定して変更してください。
参照
変更するパラメータによっては、カーネルパラメータのチューニングが必要になります。カーネルパラメータのチューニングの詳細については、“付録L カーネルパラメータの設定”および“PostgreSQL文書”の“サーバの管理”の“カーネルリソースの管理”を参照してください。
注意
postgresql.confの以下のパラメータはテキストエディタで直接編集しないでください。誤って編集した場合、WebAdminが正しく動作しません。
port
archive_mode
archive_command
wal_level
log_line_prefix
log_destination
logging_collector
log_directory
log_file_mode
log_filename
log_truncate_on_rotation
log_rotation_age
backup_destination
以下のパラメータについて注意が必要です。
superuser_reserved_connections
WebAdminで必要な接続数3を含めた接続数を設定してください。デフォルトは3です。
pg_hba.confについて
pg_hba.confに設定できる内容は、“PostgreSQL文書”の“サーバの管理”の“クライアント認証”を参照してください。
注意
接続形式“local”の設定で、インスタンス管理者を許可する設定にしてください。設定されていない場合、WebAdminが正しく動作しません。
pg_hba.confファイルをテキストエディタで編集した場合に、WebAdminで設定できない項目および値を指定すると、その行はWebAdminから参照できなくなります。