( 久々にブログw)CentOS7にpostgresqlを導入し$PGDATAを変更した時の
CentOS7にpostgresqlを導入してみた。
データディレクトリー($PGDATA?)をデフォルトから変更するときに少しはまったのでメモです。
yum install postgresql-server でpostgresql 9.2 を導入。
postgres ユーザーで initdb を実施。
このとき -D オプションで任意のディレクトリー(/pgsql/data)を指定。
この後、
systemctl start postgresql.service
を実行すると、
postgresql-check-db-dir: "/var/lib/pgsql/data" is missing or empty.
が表示される。
/usr/lib/systemd/system/postgresql.service 内の "Environment=PGDATA=" のディレクトリーを initdb -D で指定したディレクトリーに変更し、systemctl daemon-reload して再度チェレンジ。
しかし、
pg_ctl: postgresはサーバ設定ファイル"/pgsql/data/postgresql.conf"にアクセスできません: 許可がありません
と、相変わらず起動できず。上記ファイルのパーミッションも問題なし。
色々ググった結果、正しい手順は、
1) /usr/lib/systemd/system/postgresql.service 内の "Environment=PGDATA=" を変更
2) systemctl daemon-reload を実行
3) postgresql-setup initdb を実行
4) systemctl start postgresql.service
3) が抜けていたようです。
早く systemd に慣れる必要がありますね。。
![ソフトウェア デザイン 2015年 02月号 [雑誌] ソフトウェア デザイン 2015年 02月号 [雑誌]](https://images-fe.ssl-images-amazon.com/images/I/51LB1O7gOIL._SL160_.jpg)
- 出版社/メーカー: 技術評論社
- 発売日: 2015/01/17
- メディア: 雑誌
- この商品を含むブログ (3件) を見る