返回介绍

I. 教程

II. SQL 语言

III. 服务器管理

IV. 客户端接口

V. 服务器端编程

VI. 参考手册

VII. 内部

VIII. 附录

17.15. 开发人员选项

发布于 2019-09-30 03:07:15 字数 2551 浏览 1107 评论 0 收藏 0

下面的选项目的是在 PostgreSQL 代码上使用,并且在某些情况下可以帮助恢复严重损坏了的数据库。在生产环境里没有理由使用这些设置。因此,我们把他们从样例 postgresql.conf 文件中排除了出去。请注意许多这些选项要求特殊的源代码编译标志才能运转。

allow_system_table_mods (boolean)

允许修改系统表的结构。它可以被 initdb 使用。这个值只能在服务器启动的时候设置。

debug_assertions (boolean)

打开各种断言检查。这是调试助手。如果你经历了奇怪的问题或者崩溃,那么你可能会想把这个打开,因为它可能暴露编程的错误。要使用这个选项,我们必须在编译 PostgreSQL 的时候定义宏 USE_ASSERT_CHECKING(通过 configure 选项 --enable-cassert 完成)。请注意,如果启用断言选项编译 PostgreSQL ,那么 debug_assertions 缺省就是 on

ignore_system_indexes (boolean)

读取系统表时忽略系统索引(但是修改系统表时依然同时修改索引)。这个在从系统索引被破坏的表中恢复数据的时候很有用。该参数不能在会话启动之后修改。

post_auth_delay (integer)

如果为非零,那么在一个新的服务器进程启动并完成认证过程之后,就会延迟这么多秒。这样就给我们一个机会用调试器附着在一个服务器进程上跟踪认证里面的异常行为。该参数不能在会话启动之后修改。

pre_auth_delay (integer)

如果为非零,那么在一个新的服务器进程派生出来之后,就会延迟这么多秒,然后才会继续认证过程。这样就给我们一个机会用调试器附着在一个服务器进程上跟踪认证里面的异常行为。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

trace_notify (boolean)

LISTENNOTIFY 命令生成大量调试输出。client_min_messages 或 log_min_messages 必须是 DEBUG1 或者更低才能把这些输出分别发送到客户端或者服务器日志。

trace_sort (boolean)

如果打开,发出在排序操作中的资源使用的有关信息。这个选项只有在编译 PostgreSQL 的时候定义了 TRACE_SORT 宏的时候才可用(不过,目前 TRACE_SORT 缺省就是定义了的)。

trace_locks (boolean)
trace_lwlocks (boolean)
trace_userlocks (boolean)
trace_lock_oidmin (boolean)
trace_lock_table (boolean)
debug_deadlocks (boolean)
log_btree_build_stats (boolean)

各种其它的代码跟踪和调试选项。

wal_debug (boolean)

打开 WAL 相关的调试输出。只有在编译 PostgreSQL 的时候打开了 WAL_DEBUG 宏的情况下,这个选项才可用。

zero_damaged_pages (boolean)

如果侦测到一个损坏了的页面头通常会导致 PostgreSQL 报告一个错误,并且退出当前命令。把 zero_damaged_pages 设置为 on 则令系统报告一个警告,把损坏的页面填充零,然后继续处理。这种行为会破坏数据,也就是所有在已经损坏页面上的行。但是它允许你绕开坏页面然后从表中尚存的未损坏页面上继续检索数据行。因此它在因为硬件或者软件错误导致的崩溃中进行恢复是很有用的。通常你不应该把它设置为 on ,除非你已经彻底放弃从崩溃的页面中恢复数据。缺省的设置是 off ,并且只有超级用户可以改变它。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文