处理损坏的表¶
当服务器子系统试图访问损坏的表时,服务器可能会崩溃。如果在遇到损坏的表时不希望出现这种结果,则将新的系统innodb_corrupt_table_action变量设置为允许正在进行的操作继续而不会导致服务器崩溃的值。
服务器错误日志记录访问损坏表页的尝试。
与innodb_force_recovery变量交互¶
innodb_corrupt_table_action变量可以与innodb_force_recovery变量一起工作,这大大降低了InnoDB子系统在后台运行。
如果innodb_force_recovery选项<4,损坏的页面将丢失,服务器可能会继续运行,因为innodb_corrupt_table_action变量具有非默认值。
有关innodb_force_recovery变量的更多信息,请参见强制恢复InnoDBMySQL参考手册。
该特性添加了一个新的系统变量。
版本相关信息¶
- 8.0.12-1:从该特性进行移植雷竞技下载官网用于MySQL的Percona服务器5.7.
系统变量¶
innodb_corrupt_table_action¶
| 选项 | 描述 |
|---|---|
| 命令行 | 是的 |
| 配置文件 | 是的 |
| 范围 | 全球 |
| 动态 | 是的 |
| 数据类型 | ULONG |
| 默认的 | 断言 |
| 范围 | 断言,警告,挽救 |
启用
innodb_file_per_table并且使用断言值创建断言失败,导致XtraDB故意使服务器崩溃。当检测单表表空间中的损坏数据时,需要执行此操作。启用
innodb_file_per_table并且使用警告价值的原因XtraDB以传表腐为腐败的表而不是使服务器崩溃。将文件检测为损坏还将禁用该数据文件的文件I/O,删除操作除外。启用
innodb_file_per_table并且使用打捞价值的原因XtraDB允许对损坏的表空间进行读访问,但忽略任何损坏的页。
最近更新:2023-01-12