![](/img/trans.png)
[英]When I run pg_restore via process in java application, application freeze
[英]Will we face any runtime issue in application if pg_restore is in progress?
我是 postgres 恢复的新手。 我们有一个应用程序,其中多个服务使用 postgres DB。 我们正在为此应用程序添加对备份/恢复功能的支持。
它将使用 pg_dump 进行转储。 当用户触发恢复工作流时,它会调用“pg_restore”。
因此,如果“pg_restore”正在运行并且当时应用程序正在运行一些查询,将会产生什么影响? 它会面临任何运行时错误吗? 在 pg_restore 期间,postgres 会删除现有的数据库连接吗?
不,您必须在运行pg_restore
之前断开用户连接。
pg_restore
需要一个空数据库,但您可以使用选项--clean
和--create
删除并重新创建数据库。 现在DROP DATABASE
将阻塞,直到最后一个会话与数据库断开连接。
因此,首先要断开会话,方法是在适当的 sessoins 上调用pg_terminate_backend
functoin 或使用DROP DATABASE ... (FORCE)
,它从 v13 开始就存在。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.