sql >> Databasteknik >  >> RDS >> PostgreSQL

psql:FATAL:roll postgres existerar inte

OBS:Om du installerade postgres med homebrew, se kommentaren från @user3402754 nedan.

Observera att felmeddelandet INTE gör det prata om en saknad databas, den talar om en saknad roll. Senare i inloggningsprocessen kan den också snubbla över den saknade databasen.

Men det första steget är att kontrollera den saknade rollen:Vad är utdata inom psql av kommandot \du ? På mitt Ubuntu-system ser den relevanta raden ut så här:

                              List of roles
 Role name |            Attributes             | Member of 
-----------+-----------------------------------+-----------
 postgres  | Superuser, Create role, Create DB | {}        

Om det inte finns minst en roll med superuser , då har du ett problem :-)

Om det finns en kan du använda den för att logga in. Och tittar på utdata från din \l kommando:Behörigheterna för usertemplate0 och template1 databaser är desamma som på mitt Ubuntu-system för superanvändaren postgres . Så jag tror att din installation enkla använder user som superanvändare. Så du kan prova detta kommando för att logga in:

sudo -u user psql user

Om user är verkligen DB-superanvändaren kan du skapa en annan DB-superanvändare och en privat, tom databas för honom:

CREATE USER postgres SUPERUSER;
CREATE DATABASE postgres WITH OWNER postgres;

Men eftersom din postgres.app-installation inte verkar göra detta, bör du inte heller. Enkelt anpassa handledningen.



  1. Hur returnerar jag en jsonb-array och en array av objekt från mina data?

  2. Så här skapar du en offline-app för internationalisering:Bygg projektstrukturen

  3. Hur DevOps ska använda DBaaS (Database-as-a-Service) för att optimera sin applikationsutveckling​

  4. Parallellism kommer till VAKUUM