🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Q&A

1回答

3166閲覧

Postgresqlでsslエラー

neco7815

総合スコア0

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

0グッド

0クリップ

投稿2021/01/29 23:24

編集2021/01/30 01:06

【環境】
Windows10 64bit
PostgresqlのWindows版インストーラーのバージョン問わず

【困っていること】
Windows10のPCにPostgresqlをインストールしコマンドプラントを立ち上げて、
下記のコマンドを実行するとエラーとなりPostgresqlにログイン出来ない状態です。
解決方法を教えて頂けますと助かります。

・コマンド
psql -U ユーザー名
・エラー
psql: サーバはSSLをサポートしていませんが、SSLが要求されました

SSLがネックならWindows10PCからその機能を削除や停止しても良いのですが、その方法も分からない状態です。

pg_hba.confの内容は下記となります。※この部分だけコメントが外れていました。

IPv4 local connections:

host all all 127.0.0.1/32 md5

IPv6 local connections:

host all all ::1/128 md5

postgresql.confの内容は下記になります。※コメントされていない部分のみ記載しました。

listen_addresses = '*' # what IP address(es) to listen on;
port = 5432 # (change requires restart)
max_connections = 100 # (change requires restart)

log_destination = 'stderr' # Valid values are combinations of
logging_collector = on # Enable capturing of stderr and csvlog
log_line_prefix = '%t ' # special values:
log_timezone = 'Asia/Tokyo'
datestyle = 'iso, ymd'
timezone = 'Asia/Tokyo'
lc_messages = 'Japanese_Japan.932' # locale for system error message
lc_monetary = 'Japanese_Japan.932' # locale for monetary formatting
lc_numeric = 'Japanese_Japan.932' # locale for number formatting
lc_time = 'Japanese_Japan.932' # locale for time formatting
default_text_search_config = 'pg_catalog.simple'

何卒よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

20.1. pg_hba.confファイル
20.5. パスワード認証
の前後のドキュメントを読んで、まずPostgreSQLのDATAディレクトリがどこにあるかを突き止め、
pg_hba.confファイルをチェックします。

質問文中に pg_hba.conf ファイルを追記してください。
より適切なアドバイスが得られるはず。


インストール直後とは思えない内容に見えましたので、
一応念の為に、postgresql.conf の方も差し支えない範囲でお願いします。
19.3. 接続と認証
のSSLにまつわる設定が気になります。

PostgreSQLインストールしたPC上でpsqlから接続するのに、
pg_hba.confではlocalで始まる行の認証情報を使う気がするので、
今hostで始まる行はそのまま残して複写して、
先頭をhost→local、md5→trustとしたものを試してみてください。
これでローカルからの接続ではパスワード認証はなくなると思うのですが。
例えばIPv4の定義をこんなふうに。

local all all 127.0.0.1/32 trust
host all all 127.0.0.1/32 md5

投稿2021/01/30 00:21

編集2021/02/01 01:42
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

neco7815

2021/01/30 00:38

アドバイスをありがとうございます。 質問文中に pg_hba.conf ファイルの内容を追記しました。
退会済みユーザー

退会済みユーザー

2021/01/30 00:40

他人が構築したりしましたか? こんなに中身が無いのも珍しいような。
neco7815

2021/01/30 00:57

ご確認をありがとうございます。 私がインストールした直後のpg_hba.confです。コメントが外れている部分だけ抜粋したので、コメントされている部分も付けるともっと長くなります。
neco7815

2021/01/30 01:15

アドバイスをありがとうございます。 postgresql.conf の内容を質問に追記いたしました。 またpg_hba.confの編集の仕方をありがとうございます。 今発生しているPCを操作できない状態でして2/1の午前中にエラーが発生しているPCでpg_hba.confを編集し、試してみます。遅くなってしまいますが、どうぞよろしくお願いいたします。 参考サイトのURLをありがとうございます。
neco7815

2021/02/01 00:39

>先頭をhost→local、md5→trustとしたものを試してみてください。 上記を試しまして、postgresqlサービスを再起動しましたたところ、下記のメッセージが表示されpostgresqlが起動できませんでした。どうすればよろしいでしょうか? 「ローカル コンピュータ上のpostgresql-x64-11サービスは起動して停止しました。サービスの中には、ほかのサービスやプログラムで使用されていない場合は自動的に停止するものがあります」
退会済みユーザー

退会済みユーザー

2021/02/01 00:41

DATAディレクトリにlogsディレクトリがあるので、何かログ出力があるはず。
neco7815

2021/02/01 00:47

ログを確認しましたところ、下記のメッセージが表示されていました。 FATAL: could not load pg_hba.conf LOG: database system is shut down
退会済みユーザー

退会済みユーザー

2021/02/01 00:52

エディタでpg_hba.confファイルを開きっぱなしにしているか、アクセス権がおかしくなったか、削除していないか、をご確認を。
neco7815

2021/02/01 00:56

エディタでpg_hba.confファイルを開いていたので閉じて再度postgresqlをサービスから起動しましたが、起動できませんでした。 アクセス権がおかしくなると削除していないか、はどのように確認すればよろしいでしょうか? ちなみに、host→localにしなければ、postgresqlのサービスは起動できますが、 postgresqlにログインしようとすると、 「psql: サーバはSSLをサポートしていませんが、SSLが要求されました」となります。
退会済みユーザー

退会済みユーザー

2021/02/01 01:45

ん~、SSLが要求されました、が出る理由がわからないですね。 postgresql.conf にて ssl の定義がなければ基本的にoffとして扱われるので要求してこないはずなんですが。 DATAディレクトリが環境変数によって変更されていたりもしないですよね?
neco7815

2021/02/01 02:04

>DATAディレクトリが環境変数によって変更されていたりもしないですよね? はい、何もしていないので、変更されてないと思います。また環境変数を確認しましたが、問題なさそうです。 本番環境がPostgreqlを使用する予定なので、 テスト用DBでPostgresqlを使用したかったのですが、一旦他のフリーのDBに変更することにしまして、SQLiteがwindowsPCで動いたので、これで代用しようと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問