ignore_invalid_pages
一个配置参数,用于确定在恢复期间是否忽略引用无效页面的 WAL 记录
ignore_invalid_pages 是一个 配置参数,用于确定在恢复或 备用模式期间是否忽略引用无效页面的 WAL 记录。
ignore_invalid_pages 在 PostgreSQL 13 中添加。
默认值
ignore_invalid_pages 的默认值为:off。
用法
通常,在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 因 PANIC 错误而中止恢复。
将 ignore_invalid_pages 设置为 on 将导致 PostgreSQL 忽略这些无效页面并继续恢复。虽然这很可能仍然会导致数据库处于不良状态(伴随着崩溃、数据丢失和/或进一步数据损坏的风险),但它将允许 PostgreSQL 启动,以便可以执行进一步的操作,例如数据恢复。
应用更改
对 ignore_invalid_pages 的更改只能通过重新启动 PostgreSQL 来应用。
按 PostgreSQL 版本定义
ignore_invalid_pages (PostgreSQL 19)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 "ignore_invalid_pages" 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 18)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 "ignore_invalid_pages" 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 17)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 "ignore_invalid_pages" 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 16)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 ignore_invalid_pages 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 15)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 ignore_invalid_pages 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 14)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 ignore_invalid_pages 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
ignore_invalid_pages (PostgreSQL 13)
| 设置 | off |
| 单位 | |
| 类别 | 开发者选项 |
| 简短描述 | 在无效页面失败后继续恢复。 |
| 扩展描述 | 在恢复期间检测到引用无效页面的 WAL 记录会导致 PostgreSQL 引发 PANIC 级别的错误,从而中止恢复。将 ignore_invalid_pages 设置为 true 会导致系统忽略 WAL 记录中的无效页面引用(但仍报告警告),并继续恢复。此行为可能导致崩溃、数据丢失、传播或隐藏损坏,或其他严重问题。仅在恢复或备用模式下生效。 |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
变更历史
- PostgreSQL 13
- 已添加 (提交 41c184bc)
参考资料
- PostgreSQL 文档: ignore_invalid_pages
