Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 有没有一种方法可以在不等待完成的情况下运行SQL查询并断开连接?_Postgresql_Asynchronous - Fatal编程技术网

Postgresql 有没有一种方法可以在不等待完成的情况下运行SQL查询并断开连接?

Postgresql 有没有一种方法可以在不等待完成的情况下运行SQL查询并断开连接?,postgresql,asynchronous,Postgresql,Asynchronous,我有一个这样的问题 CREATE TABLE AS SELECT * FROM SOME_TABLE WHERE some_complicated_query 执行此查询大约需要4个小时,但当我遇到连接问题或任何其他问题时,查询就会失败,永远不会完成,每次我都需要重新运行它 可能有人知道:有没有办法在不等待完成的情况下并行运行查询?如果客户机离开,查询将始终失败,因为它无法传递结果。服务器可能需要很长时间才能注意到客户机已离开,但最终查询将失败 您可以做的是在数据库服务器上启动客户机,然后

我有一个这样的问题

CREATE TABLE AS 
SELECT * FROM SOME_TABLE 
WHERE some_complicated_query
执行此查询大约需要4个小时,但当我遇到连接问题或任何其他问题时,查询就会失败,永远不会完成,每次我都需要重新运行它


可能有人知道:有没有办法在不等待完成的情况下并行运行查询?

如果客户机离开,查询将始终失败,因为它无法传递结果。服务器可能需要很长时间才能注意到客户机已离开,但最终查询将失败

您可以做的是在数据库服务器上启动客户机,然后连接不会失败,语句将运行到完成。在UNIX上,您可以执行以下操作

nohup psql -c 'CREATE ...' &

要在后台启动客户端,则无需等待完成。

我不知道,但您可以通过crontab运行它,或使用数据库服务器本身的pgAgent,或通过SSH连接到服务器并使用nohup(如果可用)。或tmux或screen…是的,但这对连接问题没有帮助,谢谢,但这对连接问题没有帮助,最好是以某种方式将作业分成小块,并实现一个幂等脚本来运行它,谢谢您确认我的想法!