WSL2からWindows11のPostgreSQLにアクセス
以前「WSL2からWindows10のPostgreSQLにアクセス」を書いたのですが、WIn11にしたときにHyper-Vを使わなくしたせいか、WSL2のアドレス範囲が変わったようで、アクセスできなくなってしまいました。
調べてもよくわからなかったので、プライベートアドレス全部を pg_hba.conf に登録することにしました。
pgAdmin のクエリツールで、pg_hba.conf の場所を確認します。意外と、思っていたところと違うことがあるので、確認必須ですね。
show hba_file;
上のクエリを実行すると、「データ出力」にこんな風に出力されました。
C:/Program Files/PostgreSQL/14/data/pg_hba.conf
このファイルを開いて、以下を書き込めばOK。
# private networks
host all all 10.0.0.0/8 scram-sha-256
host all all 172.16.0.0/12 scram-sha-256
host all all 192.168.0.0/16 scram-sha-256
接続確認はWSL2の Ubuntu で psql で確認します。
$ psql -h `hostname`.local -U postgres postgres
Password for user postgres:
psql (14.2 (Ubuntu 14.2-1ubuntu1))
Type "help" for help.
postgres=#
psqlのプロンプトが出ればOKです。