質問 > その他 > PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) |
その他
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mcontact |
投稿日時: 2023/8/21 17:25
対応状況: −−−
|
神 登録日: 2022/1/22 居住地: 投稿: 1466 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) > その記述、WEB インストーラーで生成できませんよね? と。
WWBインストールにてとは書いてなかったので、PostgreSQLのsocket接続が出来ないので困っているのかと思いました。 誤解がありましたら、すいませんでした。
|
seasoft |
投稿日時: 2023/8/21 11:59
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) 引用:
これは、.env を書き換える話題のようにお見受けいたします。 .env を手動で書き換える対応は、既に書いた方法で解決済みです。 残った課題は、WEB インストーラーが入力された「データベースのホスト名」を、.env にどう反映すべきかという観点でした。 その記述、WEB インストーラーで生成できませんよね? と。 あと、「postgresql[DB名]」「mysql.sock[DB名]」は不自然ですね。何かセパレーターとか必要ありませんか? これについては、tao さんに直接絡んできます。
|
mcontact |
投稿日時: 2023/8/21 9:19
対応状況: −−−
|
神 登録日: 2022/1/22 居住地: 投稿: 1466 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) https://qiita.com/tao_s/items/5d316f83c2646eae9dda
|
seasoft |
投稿日時: 2023/8/20 19:17
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) つまり、「データベースの設定」画面の「データベースのホスト名」に入力された値は
vendor/doctrine/dbal/src/DriverManager.php に渡るまで (.env への保存時?) に URL エスケープする必要がありそうに思います。 また、「データベースのホスト名」を空欄にした場合の動作が、「データベースの設定」画面とそれ以降(DBAL?)で異なるようなので、同じくなるように期待します。それで、UNIX ドメインソケットで疎通するのが望ましいと思います。
|
seasoft |
投稿日時: 2023/8/20 18:49
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) vendor/doctrine/dbal/src/DriverManager.php 内で $url を下記に書き換えると続行できました。
.env は、以下の記述でした。
または
vendor/doctrine/dbal/src/DriverManager.php を書き戻すと、システムエラーでした。 .env を、以下に書き換えると、再び動作しました。
|
seasoft |
投稿日時: 2023/8/20 17:43
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) 空欄だと "url" は以下ですね。
|
seasoft |
投稿日時: 2023/8/20 17:27
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) データベースのホスト名を「/var/run/postgresql」にすると、入力チエック時の DB 接続は通る様子ですが、データベースの初期化画面で、以下のエラーとなります。
引用: ERROR Malformed parameter "url". どんな "url" が生成されているのですかね・・・ 調べたら、以下な感じですね。
|
seasoft |
投稿日時: 2023/8/20 14:24
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7369 |
PostgreSQL UNIXドメインソケット (EC-CUBE 4.2) [EC-CUBE] 4.2 (commit ac096e501852104f6e38a474aad1afb01fdf907f)
[レンタルサーバ] ローカル WSL [OS] Ubuntu 20.04.6 LTS [PHP] 7.4.33 -> 8.2.9(FPM) (インストール後に PHP 8 を要求されるようなので、途中からバージョンを変えました。) [データベース] PostgreSQL 12.15 [WEBサーバ] Apache 2.4 EC-CUBE 4.0 では、たしかデータベースのホスト名を localhost で設定すると UNIX ドメインソケットで疎通したと思うのですが、EC-CUBE 4.2 では 127.0.0.1 に名前解決されて TCP が使われる様子です。 訂正(2023-08-21): EC-CUBE 4.0 も駄目そうです。リビジョンにより違うかもしれませんが。 以下のエラーメッセージが表示されます。 引用: エラー データベースに接続できませんでした。An exception occurred in the driver: SQLSTATE[08006] [7] FATAL: no pg_hba.conf entry for host "127.0.0.1", user "eccube", database "ec42", SSL on FATAL: no pg_hba.conf entry for host "127.0.0.1", user "eccube", database "ec42", SSL off UNIX ドメインソケットで疎通させるには、何を入力したら良いでしょうか? ちなみに空欄だと、データベースの初期化画面には進み、以下のエラーとなります。 引用: ERROR An exception occurred in the driver: SQLSTATE[08006] [7] could not translate host name "ec42" to address: Name or service not known
|
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |