Re: [GENERAL] Unable to connect to Postgresql

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: [GENERAL] Unable to connect to Postgresql
Дата
Msg-id 9efd5d06-d63c-ed4d-f1fc-c04dba0afeab@aklaver.com
обсуждение исходный текст
Ответ на Re: [GENERAL] Unable to connect to Postgresql  (John Iliffe <john.iliffe@iliffe.ca>)
Ответы Re: [GENERAL] Unable to connect to Postgresql  (John Iliffe <john.iliffe@iliffe.ca>)
Список pgsql-general
On 04/10/2017 01:23 PM, John Iliffe wrote:
> On Monday 10 April 2017 11:53:35 Daniel Verite wrote:
>>     John Iliffe wrote:
>>> So, the problem is resolved, although I have no idea why it was
>>> necessary.
>>
>> The key seems to be the PrivateTmp=true in the systemd service.
>> Apache is not chrooted as demonstrated upthread, but that
>> setting alone makes the normal, system-wide /tmp inaccessible
>> to its processes, including the postgres Unix domain socket opened
>> there.
>>
>> I suspect that your attempt to set PrivateTmp=false as a test was
>> missed by systemd  for some reason. You could probably insist
>> in that direction and eventually make it work, but I don't see
>> how it's better than the alternative /var/pgsql or localhost through
>> TCP.
>>
>>> Also, I now have several hundred programmes to update to add the host
>>> path and none of them will now be portable.
>>
>> Given that you set two directories: /tmp and /var/pgsql,
>> I would think you can let the other apps use /tmp as before
>> and have only Apache use /var/pgsql ?
>
> Yes, I will do that, but there are several hundred PHP web page scripts to
> be updated.  Presumably if one script opens two different databases then
> both of the pg_connect() instances will need to be updated.

Out of curiosity where did you install Postgres from?

The reason I ask it that I was trying to figure why Fedora would invoke
private /tmp's for services and then have the Postgres socket be only in
the public /tmp. So I spun up a Fedora 25 instance and did an install of
Postgres from the Fedora repos and then from the PGDG repos. In either
case I got a postgresql.conf that had:

unix_socket_directories = '/var/run/postgresql', '/tmp'

Upstream you showed your default as:

unix_socket_directories = '/tmp'

which is what I see when I do a source install.

So did you do a source install or did you copy a postgresql.conf from
somewhere else?

>
>>
>>
>> Best regards,
>


--
Adrian Klaver
adrian.klaver@aklaver.com


В списке pgsql-general по дате отправления:

Предыдущее
От: John Iliffe
Дата:
Сообщение: Re: [GENERAL] Unable to connect to Postgresql
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: [GENERAL] Unable to connect to Postgresql