2016-08-23 195 views
0

我有一个长时间运行319h postgresql DELETE USING查询。我认为这一点应该终止查询。你认为这样的操作有什么风险,是否会回滚。如果我停止长时间运行postgresql DELETE USING查询,它是否回滚?

谢谢。

+0

Perhap你可以尝试阅读这篇文章 https://www.postgresql.org/docs/9.0/static/libpq-cancel.html – Xiaoerge

+0

我,我不想回滚使用pg_terminate_backend的事情。 –

+0

'pg_terminate_backend()** **将回滚事务。一个陈述是**总是**原子。无论它做了什么,成功或没有。 –

回答

0

如果它没有被提交,那么没有问题。也许是一个不得不从DBA方面杀死的交易。

+0

不,它不会将查询移动数据从一个大表挂到另一个大表。我不希望回滚操作花费太多的时间来消耗我拥有的宝贵资源。 –

+0

@ sa-mao Postgres中的回滚几乎没有成本。 –

+0

@ sa-mao如果你仍然想做这个操作,那就试试它的零件。例如,在10,000条记录之后删除并提交。 – drum

相关问题