On Sunday 8 Nov 2015 09:36 CET, Chris Warrick wrote: > On 8 November 2015 at 00:40, Cecil Westerhof <ce...@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')
Thanks. The file to edit on my system is: /var/lib/pgsql/data/pg_hba.conf and it also looks like I cannot use mixed case. But at the moment I have it working. I will delve deeper into it later. -- Cecil Westerhof Senior Software Engineer LinkedIn: http://www.linkedin.com/in/cecilwesterhof -- https://mail.python.org/mailman/listinfo/python-list