2016-02-10 20 views
51

Questa domanda è mentre il postmaster esegue la query in background, come ucciderlo o fermarlo?Come fermare/uccidere una query in postgresql?

Ad esempio, la shell o qualsiasi frontend possono essere disconnessi a causa di un problema di rete, non è possibile utilizzare ctrl-D per ucciderlo, ma il postmaster dello sfondo continua a eseguire la query. Come ucciderlo?

risposta

136

Quello che ho fatto è primo controllo quali sono i processi in esecuzione da

select * from pg_stat_activity where state = 'active'; 

trovare il processo si vuole uccidere, quindi digitare:

select pg_cancel_backend(<pid of the process>) 

Se il processo non può essere ucciso, provare:

select pg_terminate_backend(<pid of the process>) 
Problemi correlati