Win10安装PostgreSQL数据库遇到的问题总结

首先在PostgreSQL官网下载安装包下载

首次安装的时候最好不要安装到默认目录,我安装到了C:\PostgreSQL目录下,选择语言locale的时候应该选择"C",否则有可能出现“The database cluster initialisation failed.”错误。如果都按上面说的做还出现这个错误,就先把PostgreSQL卸载,先把想要安装的目录,比如我的是C:\PostgreSQL的控制权限设置为所有用户都有修改、读取和执行权限,也就是完全控制(右击文件夹-属性-安全)。然后重新安装就不会出现上面的错误了。

安装好之后,将psql.exe所在的路径添加到Path环境变量里,就可以从命令行下通过psql命令启动PostgreSQL数据库了。但是我直接运行psql,按提示输入密码之后总是连不上数据库,总是提示我没有权限。在网上查到了原因:安装PostgreSQL的时候设置的密码是数据库默认用户的密码,默认用户是postgres,所以登陆PostgreSQL数据库的时候要指定用户。登陆时候需要指定的参数通过psql --help命令也可以看到,注意默认用户名是postgres。

 -h, --host=主机名        数据库服务器主机或socket目录(默认:"本地接口")
 -p, --port=端口        数据库服务器的端口(默认:"5432")
 -U, --username=用户名    指定数据库用户名(默认:"Eagle")
 -w, --no-password       永远不提示输入口令
 -W, --password           强制口令提示 (自动)

这些参数的默认值,可以在C:\PostgreSQL\9.6\scripts下的runpsql.bat中看到,该文件内容如下:

@echo off
REM Copyright (c) 2012-2017, EnterpriseDB Corporation.  All rights reserved

REM PostgreSQL server psql runner script for Windows

SET server=localhost
SET /P server="Server [%server%]: "

SET database=postgres
SET /P database="Database [%database%]: "

SET port=5432
SET /P port="Port [%port%]: "

SET username=postgres
SET /P username="Username [%username%]: "

for /f "delims=" %%a in ('chcp ^|find /c "932"') do @ SET CLIENTENCODING_JP=%%a
if "%CLIENTENCODING_JP%"=="1" SET PGCLIENTENCODING=SJIS
if "%CLIENTENCODING_JP%"=="1" SET /P PGCLIENTENCODING="Client Encoding [%PGCLIENTENCODING%]: "

REM Run psql
"C:\PostgreSQL\9.6\bin\psql.exe" -h %server% -U %username% -d %database% -p %port%

pause


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值