Windows安装PostgreSQL数据库 无法初始化数据库问题

背景

由于项目的需要,使用PostgreSQL数据库,因此在Windows上安装PostgreSQL数据库。但是在安装后,无法访问本地数据库,这个时候查看/data目录,没有任何文件。而且安装过程中,弹出提示框

Problem running post-install step.Installation may not complete correctly the database cluster initialisation failed.
意思是:安装过程中,初始化数据库集群失败

系统环境

  • 操作系统:Windows 10 Pro
  • PostgreSQL版本:10.4-1
  • 账号:非超级管理员账号

原因

在Windows 10中,如果用的是Microsoft账号,则不是超级管理员,这个时候无法创建用户,导致通过安装包进行安装时,无法创建相应的DB用户。而且在账号中无法看到postgres这个用户,因此可猜测出,权限不足时,无法创建相应用户的账号,而无相应账号时,无法初始化DB。

解决方案

查看用户

net  user

创建Postgres用户

net user postgres postgres /add

在数据库根目录建立data目录

D:\Dev\PostgreSQL\10>md data

移除超级管理员对data目录的权限

D:\Dev\PostgreSQL\10>cacls data /e /t /r administrator
处理目录:D:\Dev\PostgreSQL\10\data

将data目录的权限赋给postgres用户

D:\Dev\PostgreSQL\10>cacls data /e /t /r postgres:C
处理目录:D:\Dev\PostgreSQL\10\data

初始化数据库

D:\Dev\PostgreSQL\10\bin>initdb.exe -D ../data -E UTF-8 --locale=chs -U postgres -W

初始化后,需要输入新的用户密码,用于登录数据库。

启动数据库

D:\Dev\PostgreSQL\10\bin>pg_ctl.exe -D D:\Dev\PostgreSQL\10\data -l logfile start

注册PostgresSQL服务

D:\Dev\PostgreSQL\10\bin>pg_ctl.exe register -N PostgreSQL -D D:\Dev\PostgreSQL\10\data

常用命令

启动PostgresSQL服务

net start PostgreSQL

停止PostgresSQL服务

net stop PostgreSQL

删除PostgresSQL服务

D:\Dev\PostgreSQL\10\bin>pg_ctl.exe unregister -N PostgreSQL

原文地址:https://www.cnblogs.com/jianxuanbing/p/9160896.html

时间: 2024-10-13 18:28:30

Windows安装PostgreSQL数据库 无法初始化数据库问题的相关文章

Windows 安装PostgreSQL

下载二进制包:https://www.enterprisedb.com/download-postgresql-binaries 直接解压到C盘 Microsoft Windows [版本 6.3.9600](c) 2013 Microsoft Corporation.保留所有权利. C:\Users\xxxx>cd C:\postgresql-9.6.2-4-windows-x64-binaries\pgsql\bin C:\postgresql-9.6.2-4-windows-x64-bin

EF6 学习笔记(一):Code First 方式生成数据库及初始化数据库实际操作

参考原文地址: https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application 说明:学习笔记参考原文中的流程,为了增加实际操作性,并能够深入理解,部分地方根据实际情况做了一些调整:并且根据自己的理解做了一些扩展.

CentOS 7 安装 PostgreSQL

参考:http://blog.csdn.net/lk10207160511/article/details/50359549##1 1.检查本机是否安装 PostgreSQL $ sudo rpm -aq | grep postgresql 2.从仓库中安装 PostgresSQL 搜索包名: $ yum search postgresql 列出包名,例如可能有: postgresql.i686 : PostgreSQL client programspostgresql.x86_64 : Po

Windows Azure上的Odoo(OpenERP)-1.创建Ubuntu虚拟机,安装PostgreSQL 数据库

前提是您必须拥有Windows Azure的账号,如果没有的话,可以去Windows Azure 中国区网站申请免费试用账号.哈哈,我就是第一批申请的试用账号,感觉自己挺幸运的.申请的过程就不写了,请自行Google! 哦,对不起(GFW),请自行百度. 首先请登录Windows Azure,然后我们来大踏步的前进吧! 1.首先让我们创建一个运行Ubuntu操作系统的虚拟机 点击界面左下角的"新建"   会弹出一个对话框,让你选择新建运行何种操作系统的虚拟机 我选择的Ubuntu Se

免安装PostgreSQL启动服务及创建数据库

安装环境windows7 64位系统 免安装版本postgresql-10.3-1-windows-x64-binaries ======================================= 解压之后无法连接数据库,pgadmin4无法启动,网上找各种方法,终于有一种可以启动,又无法创建服务器和数据库,试了好多方法终于成功了,记录下来: 1.首先到http://www.enterprisedb.com/products/pgbindownload.do下载postgreSQL程序,

安装PostgreSQL数据库(Linux篇) [转]

from marsprj 0.编译环境 Linux: CentOS 5.5 gcc: 4.1.2 1. 安装PostgreSQL 1) 解压postgresql-9.1.7.tar.bz2 #tar jxvf postgresql-9.1.7.tar.bz2 2) 进入解压后的postgresql-9.1.7目录 #cd postgresql-9.1.7 3) 编译postgresql源码 #./configure --prefix=/opt/pgsql-9.1.7 #make #make in

centos安装postgresql数据库过程

1.1.1  软件安装   1.设置用户组和用户级别 Postgresql不能以root身份运行,要以其他的身份运行,所以必须建立对应的用户和组. (1)新增database用户组:groupadd database (2)新增pgsql用户属于postgresql用户组:useradd -g database pgsql (3)修改pgsql用户密码:passwd pgsql(这里设置密码为postgres) 2. 操作系统信息:centos 5  x86 3.准备安装包,下载PostgreS

Windows下安装MySQLdb, Python操作MySQL数据库的增删改查

这里的前提是windows上已经安装了MySQL数据库,且配置完毕,能正常建表能操作.在此基础上只需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了,只有1M多.这个有点类似jdbc里的那个jar包. 下载链接:http://sourceforge.net/projects/mysql-python/ , 百度云盘 :http://pan.baidu.com/s/1dDgnfpR 密码:7bna 接着import MySQLdb就能使用了,下面给出测试代码:

Oracle数据库简介以及windows安装过程

Oracle数据库简介 也许很多人熟悉SQL server,并不是太了解Oracle数据库,这里进行一下简单的介绍 Oracle数据库的创始人是劳伦斯.埃里斯 Oracle数据库能被多个操作系统使用 eg:windows,linux,Solaris,AIX等 现在我们把Oracle和SQL server 进行一下简单的比较 1:Oracle数据库对系统的支持比SQL server多,而SQL server数据库是微软研发,只能在windows上使用. 2:架构不同,Oracle数据库中,一个实例