本地计算机上的postgresql-x64-9.6服务已启动,然后停止。某些服务在未使用时会自动停止

本地计算机上的postgresql-x64-9.6服务已启动,然后停止。某些服务在未使用时会自动停止,postgresql,Postgresql,Postgresql服务未在services.msc中启动。在WindowsServer2008R2中启动PostgreSQL服务时显示以下消息 “本地计算机上的postgresql-x64-9.6服务已启动,然后停止。如果某些服务未被其他服务或程序使用,则会自动停止。” 解决了我的问题。我已经在postgresql.conf中硬编码了hba_文件的路径。这很有效。由于某些原因,windows中存在路径名前缀,导致在错误路径中搜索pg_hba.conf文件。现在可以了,我可以启动服务并打开数据库

Postgresql服务未在services.msc中启动。在WindowsServer2008R2中启动PostgreSQL服务时显示以下消息

“本地计算机上的postgresql-x64-9.6服务已启动,然后停止。如果某些服务未被其他服务或程序使用,则会自动停止。”


解决了我的问题。我已经在
postgresql.conf
中硬编码了
hba_文件的路径。这很有效。由于某些原因,windows中存在路径名前缀,导致在错误路径中搜索
pg_hba.conf
文件。现在可以了,我可以启动服务并打开数据库了。

我也遇到了同样的问题。我听从了@Craig Ringer的建议。当我检查事件查看器时,发现此错误。
2018-06-18 12:34:11.222 GMT[4200]致命:锁定文件“postmaster.pid”已存在
2018-06-18 12:34:11.222 GMT[4200]提示:数据目录“C:/Program Files/PostgreSQL/10/data”中是否有另一个邮局主管(PID 6172)?
因此我删除了PostgreSQL数据目录中的“postmaster.PID”文件,再次启动该服务,这一次,该服务正常启动。
此错误可能是由于postgreSQL服务未完全关闭。

在postgreSQL-x64-10上遇到此错误,Windows事件查看器(Windows日志->应用程序)上记录了以下内容:

  • 信息:正在等待服务器启动
  • 错误:postgres:无法访问目录“../PostgreSQL\u 10\u data”:没有这样的文件或目录
  • 错误:运行initdb或pg_basebackup初始化PostgreSQL数据目录
  • 错误:等待服务器启动时超时

本例中的问题是错误中标识的数据目录位于已断开连接的便携式磁盘上。一旦磁盘连接回系统,postgres服务就会正常启动。

出于某些原因,postgresql进程仍在后台运行

如果系统强制关闭,可能会遇到此问题。 解决方案:

  • Windows+X(打开任务管理器-进程)

  • 查找所有正在运行的postgresql服务和“结束任务”

  • 在所有过程结束之后。您可以重新打开任务管理器以确保没有postgres服务正在运行

  • 重新启动Postgresql server

  • 对于这里的问题,我还有一个额外的答案,就是为什么会出现有点误导性的错误消息,现在是新版本,12.2 vs 9.6(“本地计算机上的postgresql-x64-12-postgresql 12 Server服务启动后停止。如果其他服务或程序未使用某些服务,则会自动停止。)

    显然,pg_hba.conf文件中的错误将导致出现上述错误消息,并且服务无法启动

    在我的例子中,我编辑了这个文件,但没有正确地注释(#)一条注释。在谷歌搜索了很多次之后,我从来没有看到提到过这一点,但最终我记得再次检查我的编辑,问题是一个简单的错误

    我修好了,现在服务开始了,没问题

    -Windows 10 x64企业版1909 18363.752
    -PostgreSQL 12.2(Windows)

    遇到了与Windows-10中的
    PostgreSQL-9.4
    相同的错误

    在我的例子中,我在
    postgresql.conf
    文件中进行了一些手动配置更新,并且必须验证在
    postgresql.conf
    文件中进行的配置更改的语法

    • 删除
      %POSTGRESQL-HOME%/9.4/Data/
      目录中的
      postmaster.pid
      文件
    • postgresql.conf
      pg_hba.conf
      文件中提供正确的语法(或引用)
    • 重新启动Postgresql服务

    更改登录帐户以启动此过程 我已经解决了同样的问题。 我已经完成了。 我删除了两个文件,然后重新启动服务。请在“C:/Program files/PostgreSQL/10/data”目录中删除以下文件:
    postmaster.opts
    postmaster.pid
    。 正如您看到@Abodesegun以西结的回答,我又删除了一个名为“postmaster.opts”的文件 这对我很有效


    希望这会有帮助。

    我的问题通过将运行该服务的帐户更改为“本地系统”得到解决,之后,我可以启动该服务。

    对我来说,删除文件不起作用。
    但是,将postgres登录用户更改为“本地系统”后重新启动计算机是可行的。

    如果安装了两个版本(例如10和11),也会发生这种情况。 因此,在某些情况下,您可能希望运行11,但10已经启动并正在运行

    所以你要做的是停止10,尝试开始11。
    在windows中,您可以通过运行->然后键入
    services.msc
    并找到列出的两个服务,然后您可以停止和启动。

    对于我来说,只需删除
    C:\Program Files\PostgreSQL\12\data
    中的som文件,其中12是我的版本文件名=>
    postmaster.pid
    ,然后删除
    postmaster.conf
    要再次运行服务,我想这将是可行的

    检查PostgreSQL日志和事件查看器日志。在事件查看器日志中,它显示超时错误消息。@user3931984-请在ServerFault或SuperUser上问这个问题。这与编程问题无关,因此它不属于so。详细信息:事件视图中的确切错误消息er和postgres日志。由于文本不是截图,所以可以搜索。事件日志:致命:XX000:C:\Program Files\PostgreSQL\13\bin\postgres.exe:找不到匹配的postgres可执行文件位置:GetInstallationPath,d:\pginstaller\u 13.auto\postgres.windows-x64\src\backend\postmaster\postmaster.C:1489有什么想法吗?类似问题,中的配置错误我发现错误消息有点误导→ W