パスワードのわからない PostgreSQL に接続する

作業用に割り振られた PC で、いつ誰がセットアップしたのかわからない PostgreSQL 13 が動いているんだけど、当然のようにパスワードはわからない。

こういうときは定番の「強制的にログインしてしまう」方法がある。まあ、PostgreSQL 管理している人なら誰でも知ってる方法だけど、PostgreSQL の設定ファイルの認証方式を全て一旦「trust認証」に変えてしまうのである。
trust 認証は「パスワードの確認をせずに接続を許可する」認証方式(認証というのか、それ?(^^;;;)なので、これで psql でパスワードなしで PostgreSQL に接続できるようになる。

Windows だと以下の場所に設定ファイルはある。

C:\Program Files\PostgreSQL\13\data\pg_hba.conf

これの下の方に設定があるので、(本当は必要なところ(TYPE local のところ)だけ修正すればいいのだが(^^;)全部直しちゃう(笑)

# TYPE  DATABASE        USER            ADDRESS                 METHOD</div><div>#</div><div>## " local"="" is="" for="" unix="" domain="" socket="" connections="" only<="" div="">
#local   all             all                                     scram-sha-256
## IPv4 local connections:
#host    all             all             127.0.0.1/32            scram-sha-256
## IPv6 local connections:
#host    all             all             ::1/128                 scram-sha-256
## Allow replication connections from localhost, by a user with the
## replication privilege.
#local   replication     all                                     scram-sha-256
#host    replication     all             127.0.0.1/32            scram-sha-256
#host    replication     all             ::1/128                 scram-sha-256

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust

みたいに修正。

Windows であれば、サービス管理ツールから postgresql-x64-13-PostgreSQL Server 13 を停止/開始で再起動すれば OK。

その後、SQL Shell (psql) を起動したら、パスワードなしで PostgreSQL に接続できる。

20260717_postgres1.jpg

GUI ツールの pgAdmin 4 の場合は、最初に pgAdmin 自体を使えるようにするマスターパスワードの入力を促されるが(Unlock Saved Passeords 画面)、適当に 'postgres' って入れてみたら突破できた(笑)

20260717_postgres2.jpg

次に DB に接続しようとすると、Connect to Server 画面で postgres ユーザのパスワードを聞いてくる。trust 認証にする前はここを突破できなかった。

20260717_postgres3.jpg

trust 認証にしても、このパスワード入力画面は開く。ただし、Password に何も入力せず「OK」ボタンを押下すれば pgAdmin 4 画面が開く。

20260717_postgres4.jpg

実は、Oracle を使うという話だった現在取り組んでいる案件が PostgreSQL 利用に変わった。
PostgreSQL をセットアップしなきゃなあと思ってたのでちょうどよかった。バージョンは古い(13。現在の最新は 18)けど、正式な開発環境を作るまで、お試しで色々プログラム組んでみるのは 13 で十分だろう。

トラックバック(0)

このブログ記事を参照しているブログ一覧: パスワードのわからない PostgreSQL に接続する

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/7262

コメントする

このブログ記事について

このページは、shinodaが2026年7月22日 22:25に書いたブログ記事です。

ひとつ前のブログ記事は「パチ屋のたこ焼き屋台、なかなか近寄れないのが・・・」です。

次のブログ記事は「postgres ユーザのパスワードを変えて認証復活」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら