[pgsql] ☑ impossible de se connecter avec nouvel utilisateur

☑ impossible de se connecter avec nouvel utilisateur [pgsql] - SQL/NoSQL - Programmation

Marsh Posté le 26-05-2017 à 02:25:07    

Bonjour,
 
j'utilise Ubuntu.
 
Je chercher à créer un username avec mon même username Ubuntu pour l'utilisation de postgresql.
 
Je fais :

$ sudo -u postgres createuser -srdPEW username


Je donne un password, le valide le password.  
Tout est OK.
 
Je vérifie que ça a bien fonctionné ; je vois bien le username lorsque je me connecte via l'utilisateur par défaut de postgresql, à savoir postgres :

postgres=# \du
                                   List of roles
 Role name |                         Attributes                         | Member of  
-----------+------------------------------------------------------------+-----------
 username  | Superuser, Create role, Create DB                          | {}
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 


 
 
Mais... quand j'essaie de me connecter au serveur avec ce nouvel utilisateur depuis le prompt bash, impossible, y a une couille dans le potage :

$ psql -U username
Password for user username:  
psql: FATAL:  database "username" does not exist


 
Pourquoi ? Qu'ai-je fait de faux ?
Merci.
:jap:


Message édité par Swiss_Knight le 26-05-2017 à 02:44:20

---------------
Hergestellt in der Schweiz.
Reply

Marsh Posté le 26-05-2017 à 02:25:07   

Reply

Marsh Posté le 26-05-2017 à 02:43:56    

Bon, ... apparemment, postgresql se connecte directement à une database lorsqu'on lance la commande

$ psql

 

À la création du nouvel utilisateur, comme aucune base de données n'a été créée, il convient donc de la créer ensuite avec l'utilisateur principal, postgres :

$ sudo -u postgres psql -U postgres


(à ce stade je ne comprends pas pourquoi il ne me prompt pas pour le mot de passe de l'utilisateur "postgres" alors que je lui avais défini un password plus tôt dans la soirée (et redémarré le service postgresql)... ??)

 

une fois dans le prompt pgsql :

postgres=# ALTER DATABASE myDatabase OWNER TO username;

 

Et voilà, au prompt bash, $ psql se connectera directement à myDatabse :

username=# SELECT current_database();
 current_database
------------------
 myDatabase
(1 row)

 

[:ignition]


Message édité par Swiss_Knight le 26-05-2017 à 02:45:08

---------------
Hergestellt in der Schweiz.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed