Sie können versuchen, psql
in den Hintergrund zu senden :
psql -f your_sql_file.sql &
Wenn Sie eine Verbindung zur lokalen dblink
Datenbank herstellen , können Sie eine Abfrage an die entfernte Datenbank senden:
SELECT dblink_connect('your_connection_name', 'your_connection_string');
SELECT dblink_send_query('your_connection_name', 'your_query');
Beachten Sie, dass jeweils dblink_send_query
nur eine Abfrage gesendet werden kann. Wenn Sie also mehrere SQL-Anweisungen ausführen möchten, ist dies nicht Ihre Lösung.
Sie können auch einen pg_agent
Job auf dem Remote-Server starten , für den keine manuellen Eingriffe erforderlich sind. Daher hat der Status Ihrer Home-Box keine Auswirkungen auf die Ausführung Ihres Jobs. Das gleiche kann erreicht werden, indem Sie einen cron
(oder noch besser, at
- danke, Erwin) Job einrichten, der Ihr Skript ausführt.
Wenn Sie einen Job mit langer Laufzeit haben, den Sie manuell starten, können Sie außerdem eine screen
Sitzung auf dem Server starten und die Datei von dort aus ausführen. In diesem Fall können Sie sich abmelden und nach Hause gehen, und das Skript wird weiter ausgeführt.
tmux
dies folgendermaßen: " Kann ich meinen lokalen Computer herunterfahren und die Abfrage wird weiterhin auf dem Remote-Server verarbeitet?"