PostgreSQL 服务无法停止/启动/重启

Posted

技术标签:

【中文标题】PostgreSQL 服务无法停止/启动/重启【英文标题】:PostgreSQL service unable to stop/start/restart 【发布时间】:2014-05-14 09:52:42 【问题描述】:

我在 CentOS 6.5 上运行 PostGreSQL 9.3,当我运行命令 service postgresql-9.3 stop 时,我得到 [ OK ],好像它已停止但服务仍在运行或在停止时自动启动,因为我可以运行service postgresql-9.3 stop 一遍又一遍地得到 [ OK ],就好像它已经停止了一样。尝试启动或重新启动会给出 [FAILED] 消息。我怎样才能阻止这个?当我尝试为我的 rails 项目运行 rake db:setup 时,我收到一条错误消息 FATAL: could not create any TCP/IP sockets。 PrestGreSQL 的 /tmp 目录中没有套接字文件,但似乎 PG 认为有。我有卸载 postgres 并进行全新安装的想法,但我需要停止该服务才能使其正常工作。任何帮助表示赞赏。

【问题讨论】:

运行:pgrep postgres 应该列出一堆 PID。它在运行吗?你的 Rails 数据库配置正确吗? 您是使用sudo 还是以root 身份运行命令-sudo service ... @CraigRinger 我以 root 身份运行。 @AndrewWei 该命令没有结果。我相信我的数据库配置很好,但我会审查它。谢谢。 下一步是查看 PostgreSQL 服务器错误日志。看看那里有没有什么信息。还要查看主要系统日志(/var/log/messages、/var/log/daemon 等)。 【参考方案1】:

检查服务状态 服务 postgresql-9.1 状态 如果服务已经停止,找到任何僵尸进程并杀死 ps -ef | grep postgres

【讨论】:

当我检查状态时,结果是“postgresql-9.3 已停止”。命令ps -ef | grep postgres 输出:“root 12535 12432 0 10:59 pts/1 00:00:00 grep postgres”。除了我刚刚运行的命令之外,这似乎什么都不是。该行为仍在发生。我对僵尸进程的可能性很感兴趣,这听起来可以解释我的问题。

以上是关于PostgreSQL 服务无法停止/启动/重启的主要内容,如果未能解决你的问题,请参考以下文章

更换PostgreSQL的data并重启服务

更换PostgreSQL的data并重启服务

更换PostgreSQL的data并重启服务

更换PostgreSQL的data并重启服务

如何ubuntu下启动/停止/重启MySQL

PostgreSQL服务器启动及关闭方法