9.3 9.4 9.5 9.6 10 11 12 13
阿里云PostgreSQL 问题报告 纠错本页面

19.14. 错误处理

exit_on_error (boolean)

如果为真,任何错误将中止当前会话。默认情况下,这个值被设置为假,这样只有 FATAL 错误(致命)将中止会话。

restart_after_crash (boolean)

当被设置为真(默认值)时,PostgreSQL将在一次后端崩溃后自动重新初始化。让这个值设置为真通常是将数据库可用性最大化的最佳方法。但是在某些环境中,例如PostgreSQL被集群软件调用时,禁用重启可能很有用,这样集群软件可以得到控制并且采取它认为适当的行动。

data_sync_retry (boolean)

如果设置为false(默认值),PostgreSQL在将修改的数据文件刷新到文件系统失败时,将引发PANIC级错误。这样会导致数据库服务器崩溃。

在某些操作系统上,回写失败后,内核页面缓存中的数据状态未知。 在某些情况下,它可能已被完全遗忘,因此重试不安全;第二次尝试可能报告为成功,而事实上数据已丢失。在此类情形下,避免数据丢失的唯一方法是在报告任何故障后从WAL中恢复,最好是在调查了故障的根本原因并更换了任何有故障的硬件之后。

如果设置为true,PostgreSQL将报告错误,但会继续运行,以便可以在以后的检查点中重试数据刷新操作。仅在调查操作系统假如回写失败时对缓冲数据的处理方式的情况下,才将其设置为true。