Der Verlauf konnte nicht in der Datei "/var/lib/postgresql/.psql_history" gespeichert werden: Keine solche Datei oder kein solches Verzeichnis

8

Ich folge diesem Tutorial, um meine postgresql-Datenbank einzurichten.

http://inventtheweb.blogspot.ca/2012/05/install-postgresql-for-django.html

Nachdem ich den Befehl CREATE DATABASE ausgeführt habe, führe ich \ q aus

Ich bekomme folgende Antwort.

could not save history to file "/var/lib/postgresql/.psql_history": No such file or directory

Was genau verursacht das und wird mir dies Probleme bereiten?

Weitere Informationen: Die Version von postgresql, die installiert wird, ist 9.3 und ich installiere sie auf Ubuntu Server 14.04 LTS

Sackgasse
quelle

Antworten:

6

Ja, der Basisverzeichnis des PGSQL-Systembenutzers (normalerweise postgres) ist auf / var / lib / postgresql eingestellt. Ich gehe davon aus, dass Sie Ihre Datenbank an einem anderen Ort installiert haben. Da dieses Verzeichnis nicht vorhanden ist, kann das PSQL-Programm nicht auf diesen Ordner zugreifen, um seine Verlaufsdatei zu erstellen. (PSQL ist die interaktive Befehlszeile für PGSQL).

Ehrlich gesagt ist es keine so große Sache. Diese Verlaufsdatei ist nur eine Liste von Befehlen, die innerhalb der PSQL-Schnittstelle ausgeführt wurden.

Ich bezweifle, dass Sie die Meldung nach Abschluss der Installation jemals wieder sehen werden. Das heißt, es sei denn, Sie stellen über Ihr eigenes Konto eine Verbindung zu PSQL her und erhalten weiterhin eine ähnliche Fehlermeldung. In diesem Fall ist Ihre HOME-Variable möglicherweise falsch. Sie sind nicht als Postgres in Ihrem System angemeldet, oder? Wenn Sie diesen Benutzer interaktiv verwenden möchten (überhaupt nicht empfohlen), müssen Sie sein HOME-Verzeichnis auf einen gültigen Ordner festlegen.

Hier sind einige Referenzlösungen .

efesar
quelle
3

Aktualisieren Sie das Home-Verzeichnis von postgres, um auf den richtigen Datenbankspeicherort zu verweisen.

sudo usermod --home '/path/to/database' postgres

Quolonel Fragen
quelle
2

Es gibt einen bestätigten Fehler im Launchpad, der PostgreSQL unter Ubuntu 14.04 betrifft:

Fehler # 1334714 - Benutzer postgres kann nicht in / var / lib / postgresql schreiben:

(Berichtet am 26.06.2014, Status: Bestätigt)

Fehlerbeschreibung

In das Verlaufsprotokoll kann nicht geschrieben werden. Scheint das gleiche Problem zu sein wie der Fehler 32696, der 2006 als behoben markiert wurde. Aber es passiert mir auch nach der direkten Postgress-Installation auf einer Ubuntu 14.04 Amazon EC2-Instanz.

Siehe auch:

Fehler # 32696 - Benutzer postgres kann nicht in / var / lib / postgresql schreiben:

(Berichtet am 24.02.2006, Status: Fix veröffentlicht)

rsp
quelle
2

Wenn Ihr Verzeichnis tatsächlich ist, /var/lib/postgres/ist dies tatsächlich eine einfache Lösung. Erstellen Sie einfach die .psql_history-Datei in diesem Verzeichnis und geben Sie dem Postgres-Benutzer das Eigentum an der Datei. Selbst nachdem ich initdbmeine Testdatenbank im /var/lib/postgres/data/Verzeichnis erstellt und dann erstellt habe , wurde keine .psql_history-Datei erstellt. Aus irgendeinem Grund muss dies manuell erfolgen.

Dies ist mit PostgreSQL 9.4.5 unter Linux (Arch / Manjaro) möglich, das vom Paketmanager installiert wird.

Charles Williams
quelle
0

Sie müssen ändern /etc/passwd.

Setzen Sie den Speicherort Ihres pgsqlOrdners in die Postgres-Zeile und versuchen Sie:

grep postgres /etc/passwd | cut -d ':' -f 6
Melocoton
quelle