質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Q&A

解決済

1回答

3342閲覧

PostgreSQL9.6.2/ CentS OS 7.3の環境で、PostgreSQLがsytemctlコマンドで起動に失敗する

brighton0725

総合スコア5

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

0グッド

0クリップ

投稿2017/04/17 07:31

###前提・実現したいこと
CentOS 7.3にPostgreSQL9.6.2をインストールし、systemctlから起動しようとしています。
PostgreSQLはyumではなく、rpmで以下のファイルをインストールしています。

postgresql96-server-9.6.2-2PGDG.rhel6.x86_64 postgresql96-libs-9.6.2-2PGDG.rhel6.x86_64 postgresql96-contrib-9.6.2-2PGDG.rhel6.x86_64 postgresql96-9.6.2-2PGDG.rhel6.x86_64 postfix-2.10.1-6.el7.x86_64

またsystemctl起動のために、/etc/systemd/system/postgresql.serviceというファイルを作成しました。

[Unit] Description=PostgreSQL 9.6.2 After=network.target remote-fs.target nss-lookup.target [Service] User=postgres Group=postgres Type=notify Environment=PGDATA=/psql/data ExecStart=/usr/pgsql-9.6/bin/pg_ctl -w start -D ${PGDATA} ExecStop=/usr/pgsql-9.6/bin/pg_ctl -w stop -m fast [Install] WantedBy=multi-user.target

###発生している問題・エラーメッセージ
systemctl start postgresqlを実行したところ、起動後にすぐに停止してしまいます。

journalctl

1Apr 17 16:23:01 hostname systemd[1]: Starting PostgreSQL 9.6.2... 2Apr 17 16:23:01 hostname pg_ctl[18384]: waiting for server to start....< 2017-04-17 16:23:01.675 JST > LOG: redirecting log output to logging collector process 3Apr 17 16:23:01 hostname pg_ctl[18384]: < 2017-04-17 16:23:01.675 JST > HINT: Future log output will appear in directory "/prdlog/psql". 4Apr 17 16:23:02 hostname pg_ctl[18384]: done 5Apr 17 16:23:02 hostname pg_ctl[18384]: server started 6Apr 17 16:23:03 hostname pg_ctl[18395]: waiting for server to shut down.... done 7Apr 17 16:23:03 hostname pg_ctl[18395]: server stopped 8Apr 17 16:23:03 hostname polkitd[562]: Unregistered Authentication Agent for unix-process:18378:44387497 (system bus name :1.5139, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus) 9Apr 17 16:23:03 hostname systemd[1]: Started PostgreSQL 9.6.2. 10

psコマンドで確認してもやはり起動していません

[postgres@hostname ~]$ ps -ef | grep postgres root 17332 10254 0 16:05 pts/2 00:00:00 su - postgres postgres 17333 17332 0 16:05 pts/2 00:00:00 -bash root 18343 10208 0 16:22 pts/1 00:00:00 su - postgres postgres 18344 18343 0 16:22 pts/1 00:00:00 -bash postgres 18434 18344 0 16:24 pts/1 00:00:00 ps -ef postgres 18435 18344 0 16:24 pts/1 00:00:00 grep --color=auto postgres

###試したこと
postgresユーザーでコマンドを実行すると問題なく起動されます。

[postgres@hostname ~]$ pg_ctl -w start waiting for server to start....< 2017-04-17 16:25:35.153 JST > LOG: redirecting log output to logging collector process < 2017-04-17 16:25:35.153 JST > HINT: Future log output will appear in directory "/prdlog/psql". done server started [postgres@hostname ~]$ ps -ef | grep postgres root 17332 10254 0 16:05 pts/2 00:00:00 su - postgres postgres 17333 17332 0 16:05 pts/2 00:00:00 -bash root 18343 10208 0 16:22 pts/1 00:00:00 su - postgres postgres 18344 18343 0 16:22 pts/1 00:00:00 -bash postgres 18540 1 0 16:25 pts/1 00:00:00 /usr/pgsql-9.6/bin/postgres postgres 18541 18540 0 16:25 ? 00:00:00 postgres: logger process postgres 18543 18540 0 16:25 ? 00:00:00 postgres: checkpointer process postgres 18544 18540 0 16:25 ? 00:00:00 postgres: writer process postgres 18545 18540 0 16:25 ? 00:00:00 postgres: wal writer process postgres 18546 18540 0 16:25 ? 00:00:00 postgres: autovacuum launcher process postgres 18547 18540 0 16:25 ? 00:00:00 postgres: stats collector process postgres 18549 18344 0 16:25 pts/1 00:00:00 ps -ef postgres 18550 18344 0 16:25 pts/1 00:00:00 grep --color=auto postgres [postgres@hostname ~]$ psql -l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+-----------+----------+---------+-------+------------------------- dvdrental | zz01adm01 | UTF8 | C | C | postgres | postgres | UTF8 | C | C | template0 | postgres | UTF8 | C | C | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C | C | =c/postgres + | | | | | postgres=CTc/postgres zipcode | zz01adm01 | UTF8 | C | C | =T/zz01adm01 + | | | | | zz01adm01=CTc/zz01adm01 (5 rows)

CentOS7でsystemctl start postgresがエラーも参考にしてみたのですが、うまくいきません。
どなたがこの問題解決方法をご存知でしょうか

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TaichiYanagiya

2017/04/17 08:06

なぜ、RHEL/CentOS 6 用の PGDGリポジトリからインストールしたのでしょうか。RHEL/CentOS 7 用の PGDGリポジトリからインストールし直すことをお奨めします。
brighton0725

2017/04/17 08:13

ありがとうございます。7用でやってるつもりでしたが、6でした。7で入れなおしてやってみます
brighton0725

2017/04/17 10:59

TaichiYanagiyaさん、7でいれなおしたらうまくいきました。ありがとうございました。基本的な話で恥ずかしいですが助かりました。
guest

回答1

0

自己解決

TaichiYanagiyaさんの指摘にあったとおり、RHEL/CentOS 7 用の PGDGリポジトリからインストールしたことでうまくいきました。

rpm -qa | grep postgres

postgresql96-9.6.2-2PGDG.rhel7.x86_64
postgresql96-libs-9.6.2-2PGDG.rhel7.x86_64
postgresql96-contrib-9.6.2-2PGDG.rhel7.x86_64
postgresql96-server-9.6.2-2PGDG.rhel7.x86_64

TaichiYanagiyaさん、ありがとうございました。

投稿2017/04/17 11:01

brighton0725

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問