On 7/21/20 4:35 PM, Michał Lis wrote:
> Hello,
>
> I can't connect to a database via service defined in pg_service.conf file
> from remote machine.
>
> Connection from local machine using this service definition works fine.
>
> I tested it on PostgreSQL 9.4 and 9.6. The other problem is with the
> localization of the pg_service.conf file.
>
> Reading internet solutions, I found, that this file may be placed in
> global configuration folder.
>
> In my case it is D:\PostgreSQLx86\9.6\etc (the SYSCONFDIR variable
> displayed by pg_config.exe).
>
> Placing the file into this folder does not work. I had to define the
> global system variable PGSERVICEFILE =
> D:\PostgreSQLx86\9.6\etc\pg_service.conf.
>
> After that the connection to database via service began work, but only on
> local machine.
>
> To reproduce problem:
>
> 1. Create pg_service.conf file like this:
>
> [test4]
> host=192.168.1.2
> port=5433
> dbname=test
> user=postgres
> password=abcd
>
> 2. Save this file in a directory, in my case it was
> D:\PostgreSQLx86\9.6\etc\pg_service.conf
> (line ends in Linux style by NotePad++)
>
> 3. Set the global system variable:
> PGSERVICEFILE =D:\PostgreSQLx86\9.6\etc\pg_service.conf
>
> 4. Restart computer to take effects for setting PGSERVICEFILE
Are you sure that PGSERVICEFILE is being defined correctly?
>
> 5. Open PGAdmin 3 or 4 no matter which.
>
> 6. Add and Set database connection
> - Name: test
> - Host: 192.168.1.2
> - Port: 0
> - Service: test4
> - User: <empty>
> - Password: <empty>
>
> On the local machine the connection will be established but on remote
> machine the error:
>
> "Definition of service "test4" not found"
>
> will be raised
>
> Connection from remote machine to server by host, port, user and password
> works fine.
>
> PostgreSQL version: 9.6.11 and 9.4
> Operating system: Windows 7 x64 Pro/Ultimate
>
> Regards
> Michal
>
>
>
>
>
--
Angular momentum makes the world go 'round.