Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #98428
| From | Chris Warrick <kwpolska@gmail.com> |
|---|---|
| Newsgroups | comp.lang.python |
| Subject | Re: Problems connecting to PostgreSQL |
| Date | 2015-11-08 09:36 +0100 |
| Message-ID | <mailman.119.1446971807.16136.python-list@python.org> (permalink) |
| References | <87wptt5qg4.fsf@Equus.decebal.nl> |
On 8 November 2015 at 00:40, Cecil Westerhof <Cecil@decebal.nl> wrote:
> I followed http://zetcode.com/db/postgresqlpythontutorial/.
>
> I used:
> sudo -u postgres createuser stressTest
> this create the role, but also gave:
> could not change directory to "/root": Permission denied
> and I did not get the questions.
This is not an error, just a warning — and it comes from sudo,
postgres doesn’t care. To silence it, you need to work from a
different directory than /root. The commands actually worked just
fine.
> Then I used:
> sudo -u postgres createdb stressTest -O stressTest
> This gave also:
> could not change directory to "/root": Permission denied
>
> The database is created, but when I execute:
> conn = psycopg2.connect(database = postgres_database, user = 'stressTest')
> I get:
> psycopg2.OperationalError: FATAL: Peer authentication failed for user "stressTest"
>
> What do I need to do to get things working?
You need to configure your PostgreSQL database to use md5
authentication, and set a password for your user.
# cd /
# sudo -u postgres psql
postgres=# ALTER ROLE stressTest WITH PASSWORD 'swordfish';
postgres=# \q
# vim /var/lib/postgres/data/pg_hba.conf
Change host settings to look like this:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Then you can connect using:
conn = psycopg2.connect(database='stressTest', user='stressTest',
password='swordfish', host='localhost')
Documentation:
http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html
http://www.postgresql.org/docs/current/static/auth-methods.html
http://www.postgresql.org/docs/current/static/sql-alterrole.html
(basically, the default peer authentication checks your Unix user name
to see if it matches 'stressTest', and fails)
--
Chris Warrick <https://chriswarrick.com/>
PGP: 5EAAEA16
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Problems connecting to PostgreSQL Cecil Westerhof <Cecil@decebal.nl> - 2015-11-08 00:40 +0100
Re: Problems connecting to PostgreSQL Chris Angelico <rosuav@gmail.com> - 2015-11-08 10:54 +1100
Re: Problems connecting to PostgreSQL Chris Warrick <kwpolska@gmail.com> - 2015-11-08 09:36 +0100
Re: Problems connecting to PostgreSQL Cecil Westerhof <Cecil@decebal.nl> - 2015-11-09 13:59 +0100
csiph-web