GBase 8s 将禁用 I/O 错误分为两大类:破坏性的和非破坏性的。当包含数据库的磁盘在
某些方面受到损坏时,禁用 I/O 错误是破坏性的。该类型的事件会威胁数据的完整性,
GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 337 -
并且数据库服务器会将块和数据库空间标记为脱机。数据库服务器禁止对损坏磁盘进行访
问,直至您修复或替换该磁盘并执行物理复原和逻辑复原。
当错误不威胁数据的完整性时,禁用 I/O 错误是非破坏性的。当有人意外地断开电缆连
接时,会发生非破坏性的错误,您有可能擦除了设置为指向块的符号链接,或可能磁盘控
制器被损坏。
在数据库服务器将某 I/O 错误视为禁用错误之前,该错误必须符合两个标准。首先,错
误必须是在数据库服务器尝试对至少具有以下某个特征的块执行操作时发生:
•
块没有镜像。
•
与所涉及的块成对的主块或镜像块脱机。
其次,错误必须是在数据库服务器尝试执行以下操作之一不成功时发生:
•
在块上搜索、读取或写入
•
打开块
•
验证有关首次使用的页的块信息是否有效
数据库服务器在其打开块之后将该验证作为稳定情况检查而执行。
可以防止数据库服务器在您调查禁用 I/O 错误时将数据库空间标记为脱机。如果您发现
问题是小问题(如电缆松动),您可以将数据库服务器变为脱机,然后再次变为联机,不
用从备份复原受影响的数据库空间。如果您发现问题更为严重(如磁盘损坏),您可以使
用 onmode -O 将受影响的数据库空间标记为脱机并继续处理。