Puoi provare a inviare psql
in background:
psql -f your_sql_file.sql &
Oppure, connettendosi al DB locale, è possibile utilizzare dblink
per inviare una query al DB remoto:
SELECT dblink_connect('your_connection_name', 'your_connection_string');
SELECT dblink_send_query('your_connection_name', 'your_query');
Si noti che dblink_send_query
può inviare solo una query alla volta. Quindi, se si desidera eseguire più istruzioni SQL, questa non è la soluzione.
In alternativa, è possibile avviare un pg_agent
lavoro sul server remoto, che non richiede alcun intervento manuale, pertanto lo stato della propria home box non ha alcun effetto sull'esecuzione del lavoro. Lo stesso può essere ottenuto impostando un lavoro cron
(o meglio, at
grazie, Erwin) che esegue il tuo script.
Inoltre, se si dispone di un processo in esecuzione da molto tempo che si avvia manualmente, è possibile avviare una screen
sessione sul server ed eseguire il file da lì. In questo caso, è possibile disconnettersi e tornare a casa e lo script continuerà a funzionare.
tmux
questo modo: "Sarò in grado di arrestare il mio computer locale e la query verrà comunque eseguita sul server remoto"?