在postgresql版本9.2.1中,数据库不接受任何命令以避免包含数据集。在pg_log中出现以下错误,
错误:数据库不接受命令以避免数据库“XXX”中的环绕数据丢失 提示:停止postmaster并使用独立的后端来清空该数据库。 您可能还需要提交或回滚旧准备的事务。
我在独立后端模式下为数据库XXX执行了vacuum full.A之后我尝试重新启动pgsql,现在pgsql服务器拒绝连接。执行 pg_isready 命令时,主机拒绝连接。
完成真空工艺后我还有什么需要做的吗? postgres服务器无法启动的可能原因是什么?提前谢谢。
答案 0 :(得分:0)
在单用户模式下,运行
SELECT datname, datfrozenxid FROM pg_database;
查看需要抽真空的数据库(值最小的数据库)。
在这些数据库中运行VACUUM (FREEZE)
,不是 VACUUM (FULL)
。