无法在开发人员计算机上安装PostgreSQL

无法在开发人员计算机上安装PostgreSQL,postgresql,windows-7,Postgresql,Windows 7,我正试图在我的工作笔记本电脑上安装PGSQL 8.3(以及8.4和9.0)。在安装结束时,安装程序抱怨它无法初始化集群。进一步调查后,我发现该服务甚至没有安装。我确实使用了“OneClick安装程序”,而不是pgAdmin独立安装。我尝试以管理员和普通用户的身份安装。在所有情况下,都会创建pgsql系统帐户并复制文件,但不会复制服务 我在家用电脑上成功安装了多次PGSQL。笔记本电脑和台式电脑都使用64位Windows 7(前者是专业版,后者是终极版)。我能想到的唯一区别是,笔记本电脑是Acti

我正试图在我的工作笔记本电脑上安装PGSQL 8.3(以及8.4和9.0)。在安装结束时,安装程序抱怨它无法初始化集群。进一步调查后,我发现该服务甚至没有安装。我确实使用了“OneClick安装程序”,而不是pgAdmin独立安装。我尝试以管理员和普通用户的身份安装。在所有情况下,都会创建pgsql系统帐户并复制文件,但不会复制服务


我在家用电脑上成功安装了多次PGSQL。笔记本电脑和台式电脑都使用64位Windows 7(前者是专业版,后者是终极版)。我能想到的唯一区别是,笔记本电脑是Active Directory的一部分,使用McAfee,而桌面电脑仅位于工作组中,使用Windows安全软件。

是否确实允许postgres用户在数据目录中创建文件?安装程序默认将安装二进制文件的数据目录(例如c:\Program Files)放在普通用户通常不可写的位置(我从来都不理解为什么安装程序包含如此愚蠢的默认值)

不过,麦卡菲可能是个问题。我听过几个关于病毒扫描程序使用Postgres(或其他DBMS)进行推断的故事。你能关闭McAfee吗?至少对于数据目录是这样吗

另一个问题可能是安装程序无法创建postgres windows用户(用于运行服务)

如果您是该计算机上的本地管理员,请尝试在安装程序创建用户之前创建该用户。安装程序将不会尝试创建用户帐户

作为最后一个ressort,您可以在没有安装程序的情况下安装PostgreSQL(这是我通常做的)

  • 从下载ZIP文件
  • 将其解压缩到一个方便的位置
  • 运行initdb(请确保使用postgres用户帐户(稍后用于运行服务的帐户)执行此操作!)
  • 运行pg_ctlr register以创建Windows服务

如果这些步骤中的任何一个失败,您将看到一条正确的错误消息,安装程序并不总是这样。

防病毒是一个众所周知的问题:

  • (答案来自一位核心开发者)


对于早期版本的PostgreSQL,我发现在重新安装之前必须删除用户“postgres”。不过,我不确定什么版本有这个问题