PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie konfiguriere ich postgresql zum ersten Mal?

Die anderen Antworten waren für mich nicht ganz zufriedenstellend. Hier ist, was für postgresql-9.1 auf Xubuntu 12.04.1 LTS funktioniert hat.

  1. Verbinden Sie sich mit der Standarddatenbank mit dem Benutzer postgres:

    sudo -u postgres psql-Vorlage1

  2. Legen Sie das Passwort für den Benutzer postgres fest und beenden Sie dann psql (Strg-D):

    ALTER USER Postgres mit verschlüsseltem Passwort „xxxxxxx“;

  3. Bearbeiten Sie die pg_hba.conf Datei:

    sudo vim /etc/postgresql/9.1/main/pg_hba.conf

    und ändern Sie "peer" in "md5" in der Zeile bezüglich postgres:

    lokal      alle     postgres Peer md5

    Um zu erfahren, welche Version von postgresql Sie ausführen, suchen Sie nach dem Versionsordner unter /etc/postgresql . Sie können auch Nano oder einen anderen Editor anstelle von VIM verwenden.

  4. Starten Sie die Datenbank neu :

    sudo /etc/init.d/postgresql neu starten

    (Hier können Sie überprüfen, ob es mit psql -U postgres funktioniert hat ).

  5. Erstellen Sie einen Benutzer mit demselben Namen wie Sie (um ihn zu finden, können Sie whoami eingeben ):

    sudo createuser -U postgres -d -e -E -l -P -r -s <my_name>

    Die Optionen weisen postgresql an, einen Benutzer zu erstellen, der sich anmelden, Datenbanken erstellen, neue Rollen erstellen kann, ein Superuser ist und ein verschlüsseltes Passwort hat. Die wirklich wichtigen sind -P -E, damit Sie aufgefordert werden, das zu verschlüsselnde Passwort einzugeben, und -d, damit Sie eine createdb erstellen können .

    Achten Sie auf Passwörter :Es wird Sie zuerst zweimal nach dem neuen Passwort (für den neuen Benutzer) fragen, wiederholt, und dann einmal nach dem Postgres-Passwort (das in Schritt 2 angegebene).

  6. Bearbeiten Sie erneut die pg_hba.conf Datei (siehe Schritt 3 oben) und ändern Sie "peer" in "md5" in der Zeile, die "alle" anderen Benutzer betrifft:

    lokal      alle     alle Peer md5

  7. Starten Sie neu (wie in Schritt 4) und prüfen Sie, ob Sie sich ohne -U postgres:

    anmelden können

    psql-Vorlage1

    Beachten Sie, dass, wenn Sie nur psql ausführen , wird es fehlschlagen, da es versuchen wird, Sie mit einer Standarddatenbank zu verbinden, die denselben Namen wie Sie hat (z. B. whoami ). template1 ist die Admin-Datenbank, die von Anfang an dabei ist.

  8. Jetzt createdb <dbname> sollte funktionieren.