-1

postgres 8.3をインストールしました。インストール中にパスワードとしてtestを入力しました...私の問題は、ローカルデータベースにアクセスしようとするたびに...パスワードを入力するたびに...データベース接続に失敗したと言う.. .i コマンド ラインでパスワードを変更しようとしましたが、機能しません...構成ファイルを変更しようとしても...機能しません...データベースを機能させる方法はありますか? お返事をありがとうございます...

4

2 に答える 2

2

Postgres はデフォルトでローカル接続に ident 認証を使用するように設定されているため、パスワードを使用して 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

2 番目の「local」行で、ident sameuser の代わりに md5 認証を使用するように設定を変更したことがわかります。これにより、正しいパスワードを使用して、システム アカウントから任意のデータベース ユーザーとしてログインできます。同じ変更を加えて postgres を再起動すると、問題が解決する可能性があります。

最初の「ローカル」行を変更しないように注意してください。postgres ユーザーはスーパー ユーザーであり、その認証メカニズムを変更すると、アクセスできなくなる可能性があります。

于 2011-02-09T20:50:41.447 に答える
0

pg_hba.conf の編集に関するコメントに加えて、このスレッドのように自分用のパスワードも設定する必要がありました。

http://ubuntuforums.org/showthread.php?t=388632

使用して

ALTER USER postgres WITH ENCRYPTED PASSWORD 'yourhardtoguesspassword';
于 2011-06-17T09:02:41.993 に答える