konkretes Beispiel für ~/.pgpass für PostGreSQL 12 unter Debian (Buster) Gnu/Linux?

konkretes Beispiel für ~/.pgpass für PostGreSQL 12 unter Debian (Buster) Gnu/Linux?

Für dieHilfeCovidGPLv3+-Projekt (Git-Commit109d5fb90f6ae...) brauchen wir ein konkretes und funktionierendes Beispiel für eine laufendeDatei~/.pgpassauf Debian (Buster) Gnu/Linux x86-64.

Wir führen eine Fehlerbehebung durch, daher müssen wir dazu in der Lage sein, ohne Root-Zugriff.

PostGreSQLAnDebian/Buster ist Version 12. Ich habe die Anweisungen in diesemREADME.md

Ich habe in meinem Leben noch nie eine PostGreSQL-Datenbank eingesetzt.

Das folgende Beispiel funktioniert nicht, ich verstehe nicht, warum (entschuldigen Sie die Kommentare auf Französisch)

# fichier ~/.pgpass pour Basile en mars 2020
# voir  https://www.postgresql.org/docs/current/libpq-pgpass.html 
localhost:*:helpcovid_db:helpcovid_usr:test_helpcovid

und diese Datei kann nur von mir gelesen werden:

% ls -l .pgpass 
-rw------- 1 basilest basilegr 164 Mar 22 12:38 .pgpass

Problem gelöst inGit-Commit5733fed27967d13

Mit unserem generate-config.pyPython-Skript


PS. Diehttps://github.com/bstarynk/helpcovidProjekt ist im März 2020in Arbeit

Antwort1

Ich verwende Ubuntu und könnte einfach dem PostgreSQL-Leitfaden unter diesem Link folgenhttps://itsfoss.com/install-postgresql-ubuntu/

Dann trat beim Versuch, das Projekt zu kompilieren, ein Fehler auf, make localhost0aber der PostgreSQL-Verbindungsteil .pgpassfunktionierte bei mir auf folgende Weise.

developer@1604:~/proj/github/helpcovid$ sudo su - postgres
postgres@1604:~$ psql -c "alter user postgres with password 'StrongPassword'"
ALTER ROLE
postgres@1604:~$ createuser dbuser1
postgres@1604:~$ createdb testdb -O dbuser1
postgres@1604:~$ psql -l  | grep testdb
 testdb    | dbuser1  | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
postgres@1604:~$ psql
psql (11.7 (Ubuntu 11.7-2.pgdg18.04+1), server 9.5.14)
Type "help" for help.

postgres=# alter user dbuser1 with password 'StrongPassword';
ALTER ROLE
postgres=# create table test_table ( id int,first_name text, last_name text );
CREATE TABLE
postgres=# insert into test_table (id,first_name,last_name) values (1,'John','Doe');
INSERT 0 1
postgres=# select * from test_table;
 id | first_name | last_name 
----+------------+-----------
  1 | John       | Doe
(1 row)

postgres=# 

Dann befindet sich meine Verbindungszeichenfolge in meinem Home-Verzeichnis

$ cat .pgpass 
localhost:5432:testdb:dbuser1:StrongPassword

Und ich kann die Verbindung über die Eingabeaufforderung herstellen:

developer@1604:~$ psql -d testdb -h localhost -U dbuser1
psql (11.7 (Ubuntu 11.7-2.pgdg18.04+1), server 9.5.14)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

testdb=> 

verwandte Informationen