web-dev-qa-db-ja.com

ALTER USER postgres PASSWORD null;今私をpsqlから締め出しました

HomeBrewを介してHigh Sierraにpostgresqlバージョン9.3.14をインストールしました。 psql経由でサーバーにアクセスしようとすると、ユーザーpostgresのパスワードの入力を求められました。パスワードとしてpostgresを使用すると、データベースにアクセスできましたが、デフォルトのユーザーのパスワードの入力を以前に要求されたことがないため、混乱しました。私はこれを回避する方法についてオンラインで周りを見て、_alter user postgres password null;_を実行することになっていた ユーザーpostgresのパスワード要件を削除 でlalligoodによって提案された解決策を試しましたが、psqlにアクセスできません。 postgresnullを試したり、パスワードを省略したりしても、うまくいきません。どうすればよいかわかりません。

1
K Pekosh

PostgreSQLを確認してください pg_hba.conf 。このような行がdocsから直接コピーされているはずです。

# Allow any user on the local system to connect to any database with
# any database user name using Unix-domain sockets (the default for local
# connections).
#
# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   all             all                                     trust

# The same using local loopback TCP/IP connections.
#
# TYPE  DATABASE        USER            ADDRESS                 METHOD
Host    all             all             127.0.0.1/32            trust

これらを保持する必要はありません。ただし、ローカルシステムの認証方法を使用してパスワードを気にすることなくローカルに接続できるように、これらを使用するのは正常です。また、これらの両方は必要ありません。ソケット経由でのみ接続する場合は、tcpを使用して接続してください。これにより、ローカルで認証されたユーザーでログインできるようになります。

したがって、PostgreSQLとしてログインできます。

Sudo -u postgresql psql -d myDatabase

またはtcpを使用

Sudo -u postgresql psql -d myDatabase -h 127.0.0.1
1
Evan Carroll