。\ postgres丢失重启后的“作为服务login” PostgreSQL服务不启动

我已经使用通常的安装方法在Windows 7 Enterprise x64系统上安装了PostgreSQL 9.1 x64。 该计算机具有适用于Windows的Novell Client,以及ZENworks自适应代理(我想从外部pipe理系统的某些用户/策略)。 我已经在几台Windows电脑上安装了postgres,所以我觉得这个系统的行为有点不同。

当计算机重新启动时,PostgreSQL服务不会启动。 试图启动服务的完整信息是:

Windows无法在本地计算机上启动postgresql-x64-9.1 – PostgreSQL Server 9.1服务。 错误1069:由于login失败,服务没有启动。 服务1

然后,我可以转到该服务的属性,在“login”选项卡上,重新键入最初与安装程序一起使用的密码。

postgres服务

当我点击确定,出现一个对话框:

帐户\ postgres已被授予“作为服务login”权限。 服务2

这听起来不错。 然后我可以正确地启动PostgreSQL服务并继续。 问题是当我重新启动,我需要去pipe理服务,重新input密码,并再次手动启动服务。

查看“本地安全策略”中的“用户权限分配”,我发现在每次重新引导后,“仅作为服务login”将被删除,只保留默认的“NT SERVICE \ ALL SERVICES”。 这就是我在重新启动时看到的:

作为服务对话框登录

然后,我可以手动将COMPNAME\postgres用户添加到此对话框来启动服务,但是在下次重新启动时它将消失。

“本地安全策略”擦除了“作为服务login”权限的问题,还是Novell Client / ZENworks Adaptive Agent有问题? 是否有任何其他策略使“。login作为服务”权限坚持。\ postgres用户?

另一种方式,可能是用户'Postgres'(用户Windows)的密码已经改变了,因此,进入postgres服务的“login”标签,login为\ postgres(不改变),然后重新input正确的密码。

修复很简单。 转到postgres服务的“login”选项卡,并将select从“此帐户”更改为“本地系统帐户”(我的问题的第二个数字)。 现在完美的工作。

解决这个问题的另一种方法似乎是将服务的启动types从“ 自动”更改为“ 自动”(延迟启动) 。 我不知道为什么这样可以解决这个问题,但也许需要其他服务之一来“作为服务login”