'service postgresql start'无法在Fedora上启动postgres服务

时间:2012-04-08 16:10:05

标签: postgresql

这里的postgres新人!

我按照here编辑了pg_hba.conf,但是当我尝试重启postgresql服务时,尝试失败了。下面是命令行输出,包含我可以收集的所有信息。

[root@arunpc modules]# service postgresql restart
Redirecting to /bin/systemctl  restart postgresql.service
Job failed. See system logs and 'systemctl status' for details.
[root@arunpc modules]# systemctl status postgresql.service
postgresql.service - PostgreSQL database server
      Loaded: loaded (/lib/systemd/system/postgresql.service; enabled)
      Active: failed since Sun, 08 Apr 2012 21:29:06 +0530; 14s ago
     Process: 12228 ExecStop=/usr/bin/pg_ctl stop -D ${PGDATA} -s -m fast (code=exited, status=0/SUCCESS)
     Process: 12677 ExecStart=/usr/bin/pg_ctl start -D ${PGDATA} -s -o -p ${PGPORT} -w -t 300 (code=exited, status=1/FAILURE)
     Process: 12672 ExecStartPre=/usr/bin/postgresql-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
    Main PID: 12184 (code=exited, status=0/SUCCESS)
      CGroup: name=systemd:/system/postgresql.service
[root@arunpc modules]# tail /var/log/messages
....
Apr  8 21:29:06 arunpc systemd[1]: postgresql.service: control process exited, code=exited status=1
Apr  8 21:29:06 arunpc systemd[1]: Unit postgresql.service entered failed state.
Apr  8 21:29:06 arunpc pg_ctl[12677]: pg_ctl: could not start server
Apr  8 21:29:06 arunpc pg_ctl[12677]: Examine the log output.

FWIW,这是使用的配置文件(pg_hba.conf):

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             postgres                                ident sameuser
local   all             all                                     ident sameuser
# IPv4 local connections:
host    all             all             127.0.0.1               password
# IPv6 local connections:
host    all             all             ::1                     password

这里的错误是什么?在编辑之前它曾经工作得很好(因为这是一台开发机器,我出色地没有做任何备份)。

我还想获得更详细的日志输出。 / var / log / messages文件中的日志消息确实要求我“检查日志输出” - 这将是哪个日志输出?我可以采取哪些其他故障排除步骤?

非常感谢提前!

1 个答案:

答案 0 :(得分:6)

根据您的启动脚本,它可能会将postmaster的输出重定向到文件。这通常是PGDATA目录中的server.log。我试过的事情:

  • 在pg_hba.conf中注释掉所有内容并重试。如果问题是该文件中的语法错误,那么注释掉有问题的行将允许服务器启动,然后您将能够一次取消注释,直到找到错误。

  • 直接从shell启动postmaster而不将其发送到后台。只需运行postmaster -D <pgdata dir>,它就会发出更多有用的日志。