win10下安装postgresql10 出现Problem running post-install step. Installation may not complete correctly.The database cluster initialisation failed

之前一直在win7上使用postgresql数据库,最近由于更换了新电脑,操作系统变成了win10,然而在安装postgresql

过程中却出现了上面的报错,虽然不知道这个报错是什么原因引起的(网上有说是因为权限问题),我也试着新建了postgres用户,

并且将安装目录的权限全部给放开了,结果就是然并卵(可能是我自己没有处理对,因为postgresql安装本身是需要一个默认的postgres的用户),后来看了一下,发现当前的报错导致的问题就是data数据中没有东西,至于文件有没有丢失,我没有仔细看对比

由于一直使用psql,所以就暴力的使用了以下方法来解决问题:

报错以后不要取消安装,还是关闭错误窗口后继续安装

安装完毕后直接手动初始化数据库:直接cd到bin目录下  使用      .initdb.exe -E UTF-8 -D F:developSoftpostgresqldata  

初始化完毕之后,然后启动数据库,第一次使用.pg_ctl.exe register -D F:developSoftpostgresqldata -l logfile start启动时发现,启动报错,而且是报的时无法访问(因此断定肯定和权限相关)

然后就使用 .pg_ctl.exe register -D F:developSoftpostgresqldata  start  发现居然神奇般的启动了  所以说明写日志的时候没有权限,因此果断不去加这个参数了,而是直接配置postgresql.conf

中的日志记录参数

然后再次启动,果然没有问题,

然后试着访问,发现如下

 这个时候明白了,由于我初始化的时候是admin用户,而postgresql默认的数据库是postgres,因此当我使用默认登录时,系统会认为当前的admin用户,没有对应的admin的数据库

这个时候只需要如下启动就ok了

 

 这时候可以看到,所有的结果跟我们的预想是符合的。

当然如果我开始的时候新建postgres用户,然后在使用postgres用户来执行这些命令,后面的连接什么的,肯定直接使用默认是没有问题的

好了这个问题到这里也算是圆满的解决!!!

原文地址:https://www.cnblogs.com/ljy-20180122/p/12775724.html