Erstellen Sie zunächst eine Sicherungskopie der angegebenen Datei pg_hba.conf
sudo tar cvf /var/tmp/mybackup_pg_hba_conf.tar /var/lib/pgsql/data/pg_hba.conf
Auf diese Weise haben Sie die ältere Version bereit, wenn Sie vermasseln. Eine nette Funktion von tar archive ist, dass Berechtigungen und Verzeichnisse erhalten bleiben. Also wenn die pg_hba.conf bis zur Unkenntlichkeit kaputt ist. Du kannst:
cd /
sudo tar xvf /var/tmp/mybackup_pg_hba_conf.tar
Dadurch wird das Backup pg_hba.conf aus dem zuvor erstellten Archiv wiederhergestellt.
Wie für die tatsächliche Einfügung der Zeile:
sudo su -c 'echo "host all all 10.0.2.12 255.255.255.255 trust" >> /var/lib/pgsql/data/pg_hba.conf'
(HINWEIS: Befehl bearbeitet. Danke bortzmeyer!)
Sollte es tun. Beachten Sie, dass dadurch nur die Zeile an die Datei pg_hba.conf angehängt wird. Wenn Sie es jemals ändern müssen, müssen Sie einen aktuellen Editor verwenden. Wie vi. Die Lernkurve kann etwas steil sein, aber nachdem Sie zumindest die Grundlagen erlernt haben, sollten Sie in den meisten Unix-Umgebungen, denen Sie begegnen, ziemlich sicher sein.
Nachdem ich wieder auf dem richtigen Weg bin, sollten Sie als nächstes versuchen, Ihre postgresql-Datenbank neu zu starten. Auf einer Centos-Maschine geschieht dies, wie ich glaube, durch:
sudo service postgresql restart
oder Sie können die Konfiguration einfach ohne Neustart neu laden:
su - postgres
pg_ctl reload
Jetzt sollten Sie in der Lage sein, von 10.0.2.12 aus auf Ihre Centos-Computer-Datenbank zuzugreifen
Vergessen Sie nicht, die postgresql.conf zu bearbeiten und die Zeile zu ändern / hinzuzufügen
listen_addresses = '*'
Postgresql lauscht standardmäßig auf localhost
quelle