ディレクトリとします。復旧に限定した構成としているため、データベースクラスタと同じディスク上に保存しています。それぞれディレクトリを作成して必要なパーミッションを設定します。参照、更新できるようにします。前の手順で作成したデータベースクラスタ用ディレクトリ内にデータベースクラスタを作成します。initdbコマンドを使用しますが、必ず管理者ユーザであるpostgresユーザで実行してください。UTF8、ロケールは設定しません。ロケールを選択しないことが推奨とされています。ログ出力、WALファイルのアーカイブに関する設定を行います。localhost(127.0.0.1)のみでリッスンする設定になっています。そのため、他のサーバからTCP/IP接続することができません。このサーバが持つ全てのIPアドレスでリッスンする設定とします(全てと言ってもEC2のデフォルトではNICはeth0の1つしかありませんが)。ディレクトリとします。ログファイルが作成された年月日を付与します。新しいログファイルに出力が切り替わるようにします。日数経過後にローテーションします。ログファイルにはデフォルトでは出力日時と発生したイベントの内容が記録されます。プロセスIDも出力されるように設定し、ログの出力形式も少し変更します。ログのタイムゾーンが日本になっていない場合は、日本(Japan)に変更します。ログメッセージの形式は以下のようになります。ログファイルが循環すると古いファイルから削除されてしまいます。WALファイルをアーカイブする設定に変更します。一部レプリケーションに関する設定も必要となります。ファイルを編集します。一度PostgreSQLのインスタンスを起動してパスワードを設定します。パスワードを設定する前にクライアント認証を設定すると、ログインできなくなってしまう可能性がありますので要注意です。パスワード設定後は再度インスタンスを停止します。ユーザのパスワードを「password」に設定しますが、実際にはもっと推測されづらいものを採用してください。stoppedクライアント認証の設定クライアントからPostgreSQLに接続する際の認証設定を行います。デフォルトで設定されている内容は全てコメントアウトし、必要な設定をファイルの末尾に追加します。設定する認証ルールは以下の通りとします。パスワードの入力を求めない。(replicationという名のデータベースは存在せず、特殊な操作を表す予約語)パスワードの入力を求めない。PostgreSQLユーザ名とパスワードで認証する。パスワードはMD5で暗号化して送信する。ユーザに関係なくTCP/IP接続(リモート接続)を行った場合は、PostgreSQLユーザ名とパスワードで認証する。任意のIPアドレス(0.0.0.0/0)からの接続を許可する。※個人情報などを扱う場合はおすすめできません。パスワードはMD5で暗号化して送信する。レプリケーションプロトコルを利用してバックアップが作成される仕様となっています。そのため、上記2つ目のルールを記述しておく必要があることに注意してください。md5Systemdの設定Systemdを利用してPostgreSQLの起動を管理する設定を行います。PostgreSQL用のサービスユニットファイルをコピーして編集します。環境変数のみで構いません。directoryEnvironment=PGDATA=/data/pgdata1/SystemdでPostgeSQLの状態確認SystemdでPostgreSQLのサービスユニットが認識されていることを確認します。初期状態ではPostgreSQLは停止状態で、自動起動も無効になっています。←停止状態#SystemdでPostgreSQLの起動SystemdでPostgreSQLを起動できることを確認します。full.SystemdでPostgreSQLを自動起動に設定SystemdでPostgreSQLを自動起動に設定します。full.SystemdでPostgreSQLを停止SystemdでPostgreSQLを停止できることを確認します。full.動作テストインスタンス起動PostgreSQLのインスタンスを起動します。コマンドを使用します。startedプロセス起動確認PostgreSQLのプロセスが起動していることを確認します。今回の設定ではマスタサーバプロセス1つとワーカプロセス7つが起動します。設定したログファイルに起動ログが出力されていることを確認します。startedSQL実行確認psqlコマンドで、SQLを実行できることを確認します。\q-bash-4.2$インスタンス停止PostgreSQLインスタンスを停止します。コマンドを使用します。アーカイブされるため、最後にアーカイブファイルが作成されていることを確認します。(2)プロフィールらのっち@ranocci損害保険会社のIT企画部に勤務するSEです。