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

来源:互联网 发布:好用的男士爽肤水 知乎 编辑:程序博客网 时间:2024/06/08 19:32

首先在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 offREM Copyright (c) 2012-2017, EnterpriseDB Corporation.  All rights reservedREM PostgreSQL server psql runner script for WindowsSET server=localhostSET /P server="Server [%server%]: "SET database=postgresSET /P database="Database [%database%]: "SET port=5432SET /P port="Port [%port%]: "SET username=postgresSET /P username="Username [%username%]: "for /f "delims=" %%a in ('chcp ^|find /c "932"') do @ SET CLIENTENCODING_JP=%%aif "%CLIENTENCODING_JP%"=="1" SET PGCLIENTENCODING=SJISif "%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


阅读全文
0 0
原创粉丝点击