2011-02-09 50 views
-1

我已经安装的Postgres 8.3,我进入测试作为密码,同时安装...我的问题是,每次我尝试访问本地数据库...我每一个输入密码的时间。 ..它说,数据库连接失败...我曾试图改变通过命令行的密码,但它不能正常工作......甚至试图更改配置文件...它不工作...有任何出路为了让我的数据库工作?感谢您的回复...密码的Postgres 8.3不工作

+0

你什么确切的错误?在同一台机器上连接密码是否有效?你是否从另一个盒子使用PGAdmin? – 2011-02-09 19:05:33

+2

向我们展示您的命令行,并告诉我们您的操作系统。 – leonbloy 2011-02-09 19:13:48

回答

1

人们常常无法与密码,因为它是默认配置为使用身份认证用于本地连接连接到Postgres的。尝试切换到postgres系统帐户并使用该用户名连接。如果你没有密码进入,你配置为ident。您还可以检查pg_hba.conf中的身份验证方法。

如果你想切换到使用密码的本地连接,你可以修改pg_hba.conf中设置。在该文件的底部,有这样一段:

# DO NOT DISABLE! 
# If you change this first entry you will need to make sure that the 
# database 
# super user can access the database using some other method. 
# Noninteractive 
# access to all databases is required during automatic maintenance 
# (autovacuum, daily cronjob, replication, and similar tasks). 
# 
# Database administrative login by UNIX sockets 
local all   postgres       ident sameuser 

# TYPE DATABASE USER  CIDR-ADDRESS   METHOD 

# "local" is for Unix domain socket connections only 
local all   all        md5 #ident sameuser 
# IPv4 local connections: 
host all   all   127.0.0.1/32   md5 
# IPv6 local connections: 
host all   all   ::1/128    md5 

您可以在我已经改变了我的设置使用MD5认证,而不是IDENT sameuser表示第二个“本地”行看。这允许我通过使用正确的密码从我的系统帐户以任何数据库用户身份登录。如果您进行相同的更改并重新启动postgres,可能会解决您的问题。

小心不要改变第一个“本地”行。 postgres用户是超级用户,如果你改变了认证机制,你可能无法进入。