我曾尝试多次安装PostgreSQL 9.4和8.4,无论我尝试过什么,它都会失败。我试图在Windows 7 SP1 x64上安装。每次安装失败后,我都会卸载并删除安装文件夹以重新开始。
每次尝试安装时,我都会在安装结束时弹出一个错误消息: “无法将sql模块加载到数据库集群中。”
然后在弹出后立即显示另一个错误: “运行安装后步骤时出错。安装可能无法正确完成。读取C:/ Program Files / PostgreSQL / 9.4 / postgresql.conf时出错”
我尝试使用以下操作进行安装:
上述所有操作都没有帮助,我总是收到错误。任何人可以提供的帮助将不胜感激!
答案 0 :(得分:22)
尝试在Windows 10 Pro上安装PostgreSQL v9.4.4时遇到同样的错误。从a solution hosted on Stack Exchange开始,我提出了以下允许安装程序成功运行的步骤:
1)创建一个名为 postgres 的新用户帐户 2)将新帐户添加到管理员和高级用户组中 3)重新启动计算机
注意:我添加了步骤#3,因为没有它,步骤#4不起作用 4)使用命令运行命令提示符作为postgres用户:
runas / user:postgres cmd.exe
5)从 postgres 命令窗口运行安装程序
6)删除 postgres 用户帐户以及用户目录
注意:我添加了步骤#6,因为安装后不需要postgres帐户
答案 1 :(得分:14)
对我来说有用的是,在安装过程中,指定一个Postgre SQL数据文件夹,它位于任何Windows用户配置文件目录(C:\ Users)之外,例如C:\ postgres-data。
&#xA ;
我的设置:


Win 10 Pro
PostgreSQL 9.5 RC1
当我尝试在某处设置PostgreSQL的数据目录时遇到了这个问题在我的用户个人资料目录下,例如我们在“我的文档”下的某个地方。


我尝试了Jeff G的解决方案,但最初没有用。它仅在我将数据目录保留为默认值(C:\ Program Files \ PostgreSQL \ 9.5 \ data)时才有效。然后我进一步测试并尝试将数据目录设置到任何用户配置文件目录之外的某个位置(即不在C:\ Users下的某个地方)。例如,C:\ postgres-data就可以了。


然后我尝试将该目录与我的默认用户一起使用,而不是像postgres临时用户那样烦恼在Jeff G的解决方案中,这也很有效。所以最后,它与我的数据目录在C:\ Users下的某个地方有关。只要它在那之外,它就起作用了。

答案 2 :(得分:9)
在安装Postgres 9.4时遇到了OP今天报告的非常类似的问题。
事实证明我使用的密码生成器创建了一个包含非字母数字字符的密码。 (“^”)我认为是这种情况的罪魁祸首。删除它允许完成Postgres 9.4(Windows 64位)的安装。
一旦找到它就很容易修复,但出现的错误信息不具有描述性,所以在这种情况下我起初并没有注意到我做错了什么。
答案 3 :(得分:9)
这些答案都没有帮助我,最后我通过在安装之前创建文件夹(C:\ PostgreSQL \ data)并为组提供完全访问权来解决了这个问题"用户"。
Windows 7 x64,postgresql-9.5.2-1-windows-x64
答案 4 :(得分:4)
使用从PostgreSQL Windows download page链接的EnterpriseDB安装程序在W2K12R2上安装时,我遇到了同样的错误("无法将SQL模块加载到数据库集群中。")。我尝试使用admin privs运行安装程序,并使用Jeff G提供的postgres-user解决方案,但都没有工作。最后,我尝试了第二个安装程序BigSQL,安装时没有问题。
答案 5 :(得分:3)
确保NETWORK SERVICE
对该文件夹具有读/写权限,在我执行此操作之前,安装失败了。
答案 6 :(得分:3)
希望这是工作。
1。)卸载PostgreSQL
2。)删除postgres用户(如果仍然存在):
净用户postgres /删除
3。)使用可以记住的密码创建postgres用户:
网络用户/ add postgres
4。)将postgres用户添加到Administrators组:
net localgroup管理员postgres / add
5。)将postgres用户添加到“高级用户”组
net localgroup“高级用户” postgres / add
6。)以postgres用户身份运行命令窗口:
runas / user:postgres cmd.exe
7。)更改用户postgres并安装postgresql
8。)返回您的帐户,然后从Administrators组中删除postgres用户。
net localgroup管理员postgres / delete
答案 7 :(得分:1)
我在9.5中遇到了这个问题并且通过以下方式解决了这个问题:
答案 8 :(得分:0)
之前我遇到过同样的问题。我首先安装了Visual Studio C ++ Express解决了这个问题。
答案 9 :(得分:0)
我有与 @gomisha 相同的经历。无论哪个用户运行安装程序, @Jeff G 的解决方案都无效。
只要目标数据目录位于c:\users
下的任何位置,安装或数据库群集init就会失败。
我在创建c:\postgresql-data
并确保postgres
用户在“有效访问权限”中拥有full access
后取得了成功。工具。
注意:我没有使用control userpasswords2
来设置postgres
用户;我通过传统的糟糕的Windows 10用户向导尝试让用户注册hotmail。我确实以postgres
运行安装。
答案 10 :(得分:0)
我有同样的问题,并注意到一些Postgres .bat文件在文本编辑器中打开。文本编辑器在安装过程中打开文件并不常见,但我注意到这些批处理文件正在设置目录权限。然后我发现.bat文件默认设置为在文本编辑器(Notepad ++)中打开。我更改了.bat文件的默认程序,卸载了Postgres,重新运行了安装程序,它运行得很好。希望这会有所帮助。
答案 11 :(得分:0)
我在使用BigSQL Windows安装程序PostgreSQL-9.6.5-1-win64-bigsql.exe时遇到了这个问题 结果问题是我的系统路径太长了。从我的系统路径中删除一些不必要的垃圾,然后重新安装后,问题就消失了。
答案 12 :(得分:0)
安装PostgreSQL时,请勿在数据库的管理员密码中使用以下符号:%
,<
和>
。
答案 13 :(得分:0)
我认为这会比上面的个人评论更好,但我没有所需的代表。我只花了几天时间,在Win 10 Creators上使用Postgre 10。我的答案&#34;是让Postgre将数据放在其默认安装文件夹而不是我的用户文件夹(它将自动备份)。
<强> 1。如果没有报告安装错误,就会发生此问题。在我第一次尝试时,我看到了:
Failed to load SQL modules into the database cluster.
但这似乎是由于:
Executing C:\Users\loren\AppData\Local\Temp\postgresql_installer_aee8e5a76f\vcredist_x64.exe /passive /norestart
Script exit code: 3010
MSI (s) (AC:FC) [14:21:35:341]: Product: Microsoft Visual C++ 2013 x86 Minimum Runtime - 12.0.40660.
Restart required. The installation or update for the product required a restart for all changes to take effect.
The restart was deferred to a later time.
在其他Postgre安装失败后重启Windows 并没有让Postgre运行。
一旦VC到位,卸载并重新安装Postgre(仍在其用户文件夹中的数据)已完成且没有报告错误。但是,无论如何,每次试图访问它仍然会产生这样的结果:
C:\Program Files\PostgreSQL\10\bin>psql
psql: could not connect to server: Connection refused (0x0000274D/10061)
Is the server running on host "localhost" (::1) and accepting
TCP/IP connections on port 5432?
could not connect to server: Connection refused (0x0000274D/10061)
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
RawCap嗅探器在每次尝试时都显示TCP SYN,紧接着是本地主机上的RST,ACK用于v4和v6。 Netstat根本没有看到5432端口正在使用中。所有Postgre运行时日志都是空的。在Windows服务中,我可以手动启动postgresql-x64-10服务,但它会立即自行停止,并注意到某些服务通常会这样做。
<强> 2。我尝试通过Postgre维基程序移动数据目录。显然对于Postgre 10来说,它是不完整的。它不涉及:
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-x64-10\Data Directory
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Services\postgresql-x64-10\Data Directory
C:\Program Files\PostgreSQL\10\pg_env.bat
C:\Program Files\PostgreSQL\10\scripts\serverctl.vbs
但修复我能找到的每个数据文件实例并没有让它运行。即使在修复了所有这些内容,并使用默认位置再次卸载并重新安装之后,新的pgAdmin4仍然会记住我原来的用户数据目录位置!
第3。我没有尝试在我的用户文件夹上提供NETWORK SERVICE读/写权限。一旦默认安装工作,我想继续我的原始项目...也许这会有效。
答案 14 :(得分:0)