我是Windows用户 - 在我开始工作之前,我花了几个小时的不间断安装和卸载,前10次左右来看标题中的错误消息。
我把它放在这里作为一个自我回答的问题,以防止其他人在安装时遇到同样的问题,并为那些使用PostgreSql的人提供一些基本的使用方法。
答案 0 :(得分:3)
您必须手动运行存在的initdb:“ C:\ Software \ PostgreSql \ 12 \ bin”
现在,由于“ postgres”是在安装过程中创建的超级用户,因此请确保您将“ postgres”与用户以及initdb cmd关联。
initdb -D“ D:\ PostgreSql \ 12 \ data” -U postgres
现在,一旦初始化数据库集群,就可以使用PostgreSql \ 12的bin文件夹中存在的pg_ctl实用程序来启动服务器
pg_ctl开始-D“ D:\ PostgreSql \ 12 \ data”
或者您也可以将其注册为Windows服务,并将其设置为自动
pg_ctl寄存器-N PostgreSql-12.3.1 -D“ D:\ PostgreSql \ 12 \ data”
现在,您都可以使用PostgreSQL数据库了。 通过cmd行(psql)或pgAdmin4
使用它答案 1 :(得分:0)
<强>安装强>)
下载适合您系统的安装文件。
确保安装到默认路径:
C:\Program Files (x86)\PostgreSQL\9.3\
是我系统的默认设置。
不安装到默认路径可能会给你带来DLL错误等等。
如果安装完成没有问题,
PostgreSql会创建一个用户postgres
的数据库,密码是您在安装过程中输入的值。
PostgreSQL\9.3\bin
文件夹添加到路径中。PostgreSql用法)
现在使用PostgreSql重要的是:
对于您要使用的任何命令,登录为用户 postgres 。
忽略此功能会为您提供常量password authentication failed
消息,因为您将尝试以PC的身份登录。
例如)
psql -U postgres
createdb -U postgres [dbname] [etc...]
psql -U postgres -f data.sql dbname
其他用法
登录psql后(通过psql -U postgres
),您可以使用以下命令
\l
列出可用的数据库
\c [dbname]
&#39; connect&#39;到数据库
\d
显示该数据库的描述(连接后)
我希望这会有所帮助。
如果我在使用前几天遇到更多问题,我会添加更多示例。
答案 2 :(得分:0)
在尝试安装PostgreSQL 9.6时,我自己遇到了一些重大问题,尽管有上述答案,但仍无法使它正常工作。对我来说解决的是
在提示您输入语言环境时,请勿选中“默认语言环境”。相反,请选择“美国英语”之类的内容。由于某些原因,默认设置无效。
如果继续进行并检查“默认语言环境”,您仍然可以解决安装错误,而无需重新安装整个安装程序。您需要做的与上述答案类似,但有一些细微变化:
"C:\Program Files\PostgreSQL\9.6\bin"
)并执行以下查询: initdb -D "C:\Program Files\PostgreSQL\9.6\data" -U postgres --locale="English_United States.1252"
如您所见,语言环境不是直观的字符串,例如“ en_US.UTF8”,因此,如果您不知道发生了什么,这会变得很讨厌。无论如何,以上代码应导致出现“成功”消息。
pg_ctl register -N PostgreSQL -D "C:\Program Files\PostgreSQL\9.6\data"
这将导致一个名为PostgreSQL的Windows服务。
net start PostgreSQL
就是这样。一切都应该已经启动并运行了。
答案 3 :(得分:0)
我在安装过程中遇到了同样的问题。对我有用的是卸载 Postgres 并以管理员身份运行 .exe 文件。