他の回答に加えて、デフォルトでは、Postgresはオペレーティングシステムアカウントに基づく認証でUnixソケットを介した接続を受け入れるように構成されていることに注意してください。そのため、psql
正常に動作し、パスワードは必要ありません。
JDBC接続はパスワード認証を使用してTCP/IP経由で行われるため、pg_hba.conf
を変更する必要があります によると。たとえば、この行では、パスワード認証を使用するすべてのユーザーに対して、同じマシンからすべてのデータベースへのTCP/IP接続を許可します。
host all all 127.0.0.1/32 md5
この行を追加した後jdbc:postgresql:databasename
動作するはずです。
編集: PostgreSQLJDBCドライバーはTCP/IP経由でのみ機能するため、Unixソケット経由でJDBC接続を作成することはできません。 JDBC接続を作成するときに使用するパスワードは、ユーザーに割り当てられたパスワードです。お持ちでない場合は、たとえばALTER USER
を使用して割り当てることができます。 指図。 19.3を参照してください。認証方法
。
関連項目: