PostgreSQL 18 中文参考文档(未翻译部分保留英文)🌐 切换到英文原版 →

18.5. 关闭服务器 #

安全关闭数据库服务可以通过向主服务进程发送特定 Unix 信号来精确指定关闭模式:

智能关闭(Smart Shutdown:SIGTERM)

禁止接纳新的连接请求,但允许当前已连接的所有客户端会话正常执行完毕业务。只有在全部既有会话自然断开后,实例才会完全终止关闭。

快速关闭(Fast Shutdown:SIGINT)

生产维护最常用的标准关闭模式。立即阻断新连接,并主动向所有既有会话进程发送中断信号,回滚正在执行的未决事务并迅速退出,随后主服务执行标准的检查点刷盘并安全退出。

立即关闭(Immediate Shutdown:SIGQUIT)

紧急故障保护模式。立即强制杀死所有子进程且不执行正常的关机检查点刷盘。这意味着下次启动实例时必须执行崩溃恢复(回放 WAL 日志)。仅限极端紧急情况下使用。

在命令行中可以使用 pg_ctl stop -m fast 直接触发快速关闭。严禁用 kill -9(SIGKILL)强杀主进程,这会阻断共享内存锁的释放并留下悬挂的子进程。