我得到了一个新的笔记本电脑从戴尔(XPS 15),与Windows 10专业版。我总是有同样的问题在postgres安装“运行后安装步骤的问题。安装可能无法正确完成。数据库群集初始化失败。”
我尝试了很多过去线程的解决方案:安装postgres不进入progam文件创建一个名为postgres的用户与postgress目录的完全访问权限,在这里解释https://www.youtube.com/watch?v=pS_zWDDDSe0检查新的win-updates关闭防火墙和防病毒的Windows。
运行cscript时出错//NoLogo“C:\开发\postgres/安装程序/服务器/初始化群集。vbs”“NT授权\网络服务”“postgres”“****”“C:\开发\postgres”“C:\开发\postgres\数据””5432“默认值”0:程序以错误退出代码结束运行安装后步骤时出现问题。安装可能无法正确完成数据库群集初始化失败。[14:03:49]删除临时脚本目录...正在创建菜单快捷方式...正在执行cscript //NoLogo“C:\develope\postgres\installer\server\createshortcuts_clt.vbs”“PostgreSQL 11”“C:\develope\postgres”脚本退出代码:0
编辑错误日志
Executing batch file 'radAD31B.bat'...
The program "postgres" was found by "C:/develop/postgres/bin/initdb.exe" but was not the same version as initdb.
9条答案
按热度按时间bfrts1fy1#
我已经纠结了几个小时了,所以我把这个贴给其他来到这里的人。
最初,我只能在
pgsql-bugs
邮件列表中找到两个bug报告:BUG #15856: The program "postgres" was found by "initdb" but was not the same version as initdb.
BUG #15970: Db initialization error - initdb.exe and postgres not same version
具体症状有:
尽管版本匹配,您仍会得到以下结果:
如果这些是您的症状,问题是您的区域/语言设置使用UTF-8(测试版设置)。这会导致许多程序出现问题,PostgreSQL就是其中之一。禁用此设置并重新安装,您应该不会有问题。
s71maibg2#
如果您更改了注册表中的命令行代码编码参数
HKEY_LOCAL_MACHINE\软件\Microsoft\命令处理器\自动运行
到chcp 65001,chcp 1251或任何其他,那么这可能是问题所在。
将命令行编码注册表值返回到默认值(空)解决了我的问题。
尝试将注册表值更改为空:
HKEY_LOCAL_MACHINE\软件\Microsoft\命令处理器\自动运行
piv4azn73#
请按照以下步骤操作以避免此错误
1.卸载PostgreSQL
1.如果您有postgres用户,请删除
1.右键单击我的电脑/这台PC,然后单击管理后藤本地用户和组,然后单击用户*新用户输入用户名postgres和密码(任意),然后单击创建按钮。
1.现在,右键单击postgres用户,然后单击属性**,单击成员选项卡,然后单击添加按钮,单击高级,将打开一个新的对话框,用于组,单击立即查找,然后选择管理员,单击确定按钮。
1.现在打开命令提示符/ cmd
1.在此处键入runas /user:postgres cmd.exe并按Enter键
1.postgresql-x.x. x-x-windows.exe输入(此处x表示发布版本、主要版本和次要版本)。
1.现在重复步骤4,删除组Administrators并添加Power Users
wlsrxk514#
postgres 12刚遇到这个问题,我解决这个问题的方法与Atif类似,但使用命令行:
1.卸载PostgreSQL
1.如果postgres用户仍然存在,请将其删除:
net用户postgres /删除
1.使用您可以记住的密码创建postgres用户:
net用户/add postgres [密码]
1.将postgres用户添加到管理员组:
网络本地组管理员postgres /add
1.跳过这个组在win 10上不再存在,默认用户应该有必要的权限-将postgres用户添加到Power Users组
1.以postgres用户身份运行命令窗口:(打开新命令窗口):
runas /用户:postgres命令. exe
1.将安装文件复制到该用户可访问的位置并运行它,例如:
C:\Download\postgresql-12.4-1-windows-x64.exe
1.从管理员组中删除postgres用户:
网络本地组管理员postgres /delete
就是这样,希望对你有用
6g8kf2rb5#
我已经看了可用的解决方案,但没有一个对我有效,所以我只是在我的Windows 10桌面上创建了一个新用户,并在那里进行了安装,它能够成功完成。
lyr7nygr6#
解除安装可能不会移除所有登录项目。您可以在工作列搜寻中输入
registry
,然后开启Registry Editor
。导航至:
并删除与
postgresql
相关的条目。vptzau2j7#
用EDB安装程序在Windows上安装PostgreSQL会让你更快地秃顶。你可以在WSL(Windows Linux子系统)上运行PostgreSQL,并在Windows上连接到它!
以管理员身份打开Windows终端/PowerShell(右键单击Windows 11上的开始图标-〉Windows终端(管理员)。
登录后,Ubuntu将自动安装,WSL 2和Ubuntu是Windows 11的标准配置(查看文档了解如何选择不同的发行版等)按照说明输入您想要的用户名和密码。
更新Ubuntu:
安装PostgreSQL:
为“postgres”用户提供密码:
启动服务并打开psql shell:
请注意,您创建的密码不是postgres的DB密码,因此除非您创建一个新用户,否则您可以在psql shell中为postgres提供一个密码:
现在您可以安装pgAdmin或使用您自己的程序(在“正常”Windows中)来确认您可以127.0.0.1使用用户postgres和他的密码通过端口5432(可能会有所不同)连接到www.example.com。
aydmsdu98#
只是对 Anton Kudryavtsev 的回答做了一点补充:检查注册表中是否没有
Autoran
参数:\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor
它的'删除解决了错误
The program "postgres" was found by "C:/Program Files/PostgreSQL/14/bin/initdb.exe" but was not the same version as initdb
在我的情况下(检查在Windows 10 x64和Postgress 14. 5.exe安装程序)fcg9iug39#
同样的问题。测试版UTF-8没有被选中。但是这给了我一个想法。
我试图使用与我正在使用的系统的默认区域设置不同的区域设置进行安装。尝试了几次。
已使用默认区域设置成功安装。