安装场景:
postgresql-13.4-1-windows-x64.exe 安装在Windows 10 专业版
问题描述:
安装PostgreSql程序总是到最后的时候弹出报错 The database cluster initialisation failed,查看安装日志文件(installation_summary.log)里面也没有报错信息,之前有安装成功过一次挺顺利的,后来因为服务突然不能启动了,然后就卸载了想重新安装一下,就出现了怎么安装都安装不上,安装目录data文件一直为空。通过网上查找资料,创建postgres用户、对文件夹赋权、卸载重装等操作,都试了一遍结果都不行。在使用命令对data文件夹初始化数据时,居然报版本不一致问题,然后又通过该信息去查找资料,无意中在一篇文章中看到,如果系统改变了注册表中的编码格式,在安装postgreSQL的时候就有可能出现问题,因为我在使用命令的时候指定编码格式为UTF-8,结果直接报版本不一致问题,后来我想起来有修改cmd命令窗体中的编码格式,是通过注册表来修改的。
原因分析:
postgreSQL初始化数据库的时候可能是默认某种编码格式来执行操作的,如果不是默认指定的编码格式则会不进行操作(安装程序)并进行提示。
解决方案:
首先通过命令 regedit 进入注册表,\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor 或者(HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\autorun) 值设置为空就可以了,然后重新安装 postgreSQL ,成功!