J'ai un compte utilisateur Linux, un rôle postgresql et une base de données associée, tous appelés foo.
depuis l'utilisateur fux de linux, j'ai exécuté la commande
dropdb foo
Maintenant, quand j'essaie d'exécuter psql à partir de l'utilisateur Linux, je reçois l'erreur ...
psql: FATAL: database "foo" does not exist
Cela signifie-t-il que lors de l'exécution de psql à partir d'un compte utilisateur linux, il doit y avoir une base de données associée à ce compte utilisateur linux?
psql
suppose que vous souhaitez vous connecter à une base de données, vous pouvez soit en fournir une (juste après la commande), soit supposer que vous souhaitez vous connecter à une base de données dont le nom est le même comme nom d'utilisateur (ou le nom de compte du processus qui a démarré psql
):
Vous pouvez donc écrire:
psql my_db
ou
psql -d my_db
ou encore
psql --dbname=my_db
... et psql
se connecteront à la base de données (locale) nommée my_db
.
Vous avez plus d'options de connexion que vous pouvez vérifier dans la documentation .
Si vous n'avez pas encore créé de base de données, vérifiez createdb
.