sql >> Database >  >> RDS >> PostgreSQL

Postgresql:FATAL:rol bestaat niet

Ik kwam soortgelijke problemen tegen bij het instellen van een nieuwe Rails-toepassing met Postgresql. Ik krijg de volgende foutmeldingen hieronder

FATAL:  role "promisepreston" does not exist
Couldn't create 'MyBlog_development' database. Please check your configuration.
rails aborted!
ActiveRecord::NoDatabaseError: FATAL:  role 

Caused by:
PG::ConnectionBad: FATAL:  role "promisepreston" does not exist

Volg de onderstaande oplossing om dit op te lossen

Eerst moeten we inloggen op het postgres-gebruikersaccount via de opdrachtregelinterface;

sudo su - postgres

Maak vervolgens verbinding met de databaseserver met behulp van de psql-client, als de rol van postgres:

psql -U postgres

Welkom bij psql 10.6, de interactieve PostgreSQL-terminal.

[email protected]:~$ psql -U postgres
psql (10.6 (Ubuntu 10.6-0ubuntu0.18.04.1))
Type "help" for help

postgres=#

Vervolgens zullen we, verbonden met de psql-client, een rol maken met onze gewenste rolnaam dat het LOGIN attribuut en ons gewenste wachtwoord . heeft , en dat databases kan maken en rollen kan beheren (N/B: Typ dit niet postgres=# , aangezien het een tijdelijke aanduiding is):

postgres=# create role rolename with createdb login password 'password1';

Let op de vereiste volgpuntkomma (; ) aan het einde van de SQL-instructie. De enkele aanhalingstekens ( ‘ ‘ ) maken geen deel uit van het wachtwoord, maar moeten het omsluiten.

Werkte het? U kunt controleren met het commando \du (N/B: Typ dit niet postgres=# , aangezien het een tijdelijke aanduiding is):

postgres=# \du

U kunt nu de opdracht uitvoeren om de database voor uw Rails-toepassing te maken;

rails db:create

En voer dan ook de opdracht uit om de database voor uw Rails-toepassing te migreren;

rails db:migrate

Dat is alles.

Ik hoop dat dit helpt



  1. Een betere manier om te zoeken naar tags in de mysql-tabel

  2. Som per maand op en zet maanden in kolommen

  3. Hoe kan ik een SQL Server LocalDb-database van de ene machine naar de andere verplaatsen?

  4. Ouder kind mysql