dblink password required

Started by Oliver Kohll - Mailing Listsover 11 years ago3 messagesgeneral
Jump to latest
#1Oliver Kohll - Mailing Lists
oliver.lists@agilebase.co.uk

Hi,

I’m trying to use dblink to connect from database1 to database2 on the same machine. The Postgres version is 9.3.5.

Firstly, I’ve created a user to use with the connection, while logged in as the postgres superuser to database2:

create user db_link with password ‘mypassword’;
grant select on appuser to db_link;

Secondly, the following has been added to pg_hba.conf and a restart done.

# dblink between database1 and database2
local database2 db_link md5
host database2 db_link 127.0.0.1/32 md5
host database2 db_link ::1/128 md5

Connecting with PSQL prompts for a password as expected:

psql -U db_link -d database2

Password for user db_link:
psql (9.3.5)
Type "help" for help.

Then, as a normal user logged into database1, I tried

select * from dblink(‘dbname=database2 username=db_link password=mypassword','select username, email from appuser') as t1(username text, email text);

However this returns

ERROR: password is required
DETAIL: Non-superusers must provide a password in the connection string.

This is my first time trying dblink so there’s probably something simple I’m missing, but I thought I had provided a password. Any ideas?

Regards
Oliver Kohll

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#2Adrian Klaver
adrian.klaver@aklaver.com
In reply to: Oliver Kohll - Mailing Lists (#1)
Re: dblink password required

On 10/24/2014 09:30 AM, Oliver Kohll - Mailing Lists wrote:

Hi,

I’m trying to use dblink to connect from database1 to database2 on the same machine. The Postgres version is 9.3.5.

Firstly, I’ve created a user to use with the connection, while logged in as the postgres superuser to database2:

create user db_link with password ‘mypassword’;
grant select on appuser to db_link;

Secondly, the following has been added to pg_hba.conf and a restart done.

# dblink between database1 and database2
local database2 db_link md5
host database2 db_link 127.0.0.1/32 md5
host database2 db_link ::1/128 md5

Connecting with PSQL prompts for a password as expected:

psql -U db_link -d database2

Password for user db_link:
psql (9.3.5)
Type "help" for help.

Then, as a normal user logged into database1, I tried

select * from dblink(‘dbname=database2 username=db_link password=mypassword','select username, email from appuser') as t1(username text, email text);:

I think the problem is the above- ^^^^^^^^^^^^^^^

username=db_link should be user=db_link

The accepted keywords are here:
http://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNSTRING

31.1.2. Parameter Key Words

However this returns

ERROR: password is required
DETAIL: Non-superusers must provide a password in the connection string.

This is my first time trying dblink so there’s probably something simple I’m missing, but I thought I had provided a password. Any ideas?

Regards
Oliver Kohll

--
Adrian Klaver
adrian.klaver@aklaver.com

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

#3Oliver Kohll - Mailing Lists
oliver.lists@agilebase.co.uk
In reply to: Adrian Klaver (#2)
Re: dblink password required

select * from dblink(‘dbname=database2 username=db_link password=mypassword','select username, email from appuser') as t1(username text, email text);:

I think the problem is the above- ^^^^^^^^^^^^^^^

username=db_link should be user=db_link

The accepted keywords are here:
http://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNSTRING

Yes that’s it, thanks.

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general