[CentOS7] PostgreSQLのソースインストール後の起動ファイル作成

yum/RPMでなくソースをコンパイル・インストールした場合に、これまでのような「/etc/init.d」以下に設置する起動スクリプトと同様の「systemctl」用の設定は付いていない場合が多い。

...という罠に、これまで使っていたRPM版のPostgreSQLを削除してソースをコンパイル、インストールしてさあ起動、という段階になって気がついた。

調べたところ、起動設定は「/usr/lib/systemd/system/<サービス名>.service」として作成すれば良さそうだ。

※「/lib」が「/usr/lib」のSymbolicLinkになっている


# vi /usr/lib/systemd/system/postgresql.service
---ここから---
[Unit]
Description=PostgreSQL database server
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/pgsql/data/postmaster.pid
User=postgres
ExecStart=/usr/local/pgsql/bin/pg_ctl -s -D /usr/local/pgsql/data start 
ExecStop=/usr/local/pgsql/bin/pg_ctl -s -D /usr/local/pgsql/data stop -m fast 
ExecReload=/usr/local/pgsql/bin/pg_ctl -s -D /usr/local/pgsql/data reload

[Install]
WantedBy=multi-user.target
---ここまで---

・自動起動登録
# systemctl enable postgresql.service
・起動
# systemctl start postgresql.service

※以下参考
・停止
# systemctl stop postgresql.service
・再起動
# systemctl restart postgresql.service
・設定リロード
# systemctl reload postgresql.service

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は 必須項目です。

管理者が承認次第、表示されます。

*