如何在 PostgreSQL 10 中触发 PANIC

How to trigger PANIC in PostgreSQL 10

出于教育目的,我在本地使用 PostgreSQL 10 服务器版本,我的任务之一是对该版本强制执行 PANIC 错误,只是为了测试日志文件中的报告方式。

我编辑了 /etc/postgresql/10/main/postgresql.conf 并修改了以下几行:

log_min_messages = PANIC
log_min_error_statement = PANIC

根据 PostgreSQL 的最新文档,它指定:

PANIC Reports an error that caused all database sessions to abort.

我想知道是否有一种简单的方法可以触发此类错误并将其打印在日志文件中。

我搜索了一下,但没有找到任何可以轻松工作的东西。

将这两个参数设置为 PANIC 不是一个好主意。将它们保留在 ERRORWARNING,无论如何都会记录 PANIC 条消息。

引发恐慌的方式有很多种。例如,您可以删除 pg_wal 目录或其他重要数据结构的写入权限。然后创建一些数据修改 activity(或调用 pg_switch_wal 几次)。