Unter Kubuntu 20.04
Bevor ich einen Docker-Container auf meinem Computer erfolgreich starten kann, muss ich einen Postgres-Prozess beenden. Dazu gehe ich folgendermaßen vor:
sudo ss -lptn 'sport = :5432'
, die Folgendes ausgibt:
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 244 127.0.0.1:5432 0.0.0.0:* users:(("postgres",pid=1003,fd=5))
kill <pid>
Jetzt könnte ich den Docker-Container ausführen, der eine Postgres-Datenbank enthält. Ich möchte, dass ich diese Schritte nicht ausführen muss, bevor ich eine Postgres-Datenbank ausführen kann. Aus irgendeinem Grund lsof -i :5432
wird der Vorgang nicht zurückgegeben.
Ist es Standardverhalten, dass Postgres im Hintergrund läuft? Ist es sicher, diesen Prozess zu stoppen? Wenn ja, wie kann ich verhindern, dass dieser Prozess automatisch im Hintergrund läuft?
Ich habe die folgenden Befehle ohne Erfolg ausprobiert:
sudo systemctl disable postgresql
sudo update-rc.d postgresql disable
Antwort1
Das Beenden eines Datenbankprozesses ist eine wirklich gute Möglichkeit, eine Datenbank zu zerstören. PostgreSQL ist nicht standardmäßig installiert, alsoetwas oder jemandmuss es aus einem bestimmten Grund auf der Maschine installiert haben. Sie sollten überprüfen, ob irgendetwas auf Ihrem System es benötigt.
Um die Frage zu beantworten: Sie können PostgreSQL sicher wie folgt stoppen:
sudo service postgresql stop
Sie können den Start von PostgreSQL beim Booten folgendermaßen verhindern:
sudo service postgresql disable
Wenn auf Ihrem System keine lokale Installation der Datenbank-Engine erforderlich ist, können Sie sie entfernen:
sudo apt --purge remove postgresql
Notiz:Dadurch wird nur das Serverelement entfernt, während die Clientbibliotheken für die Verbindung mit PostgreSQL-Installationen intakt bleiben.