MySQL OCP888题解069-CHECK TABLE

1、原题

1.1、英文原题

1.2、答案

B、E

2、题目解析

2.1、题干解析

本题主要考察CHECK TABLE的作用和注意事项。

2.2、选项解析

  1. CHECK TABLE可以检查一个或多个表是否有错误,适用于InnoDB、MyISAM、ARCHIVE和CSV表。能够检查标的结构和索引,所以选项B、E正确。

3、知识点

3.1、知识点1:CHECK TABLE语句

  • CHECK TABLE检查一个或多个表是否有错误。对于MyISAM表,关键统计数据也会被更新。CHECK TABLE也可以检查视图是否有问题,比如在视图定义中引用的表不再存在。
  • CHECK TABLE适用于InnoDB、MyISAM、ARCHIVE和CSV表。
  • 对于分区表支持CHECK TABLE,可以使用ALTER TABLE …CHECK PARTITION来检查一个或多个分区;
  • 语法
CHECK TABLE tbl_name [, tbl_name] ... [option] ...

option: {
    FOR UPGRADE
  | QUICK
  | FAST
  | MEDIUM
  | EXTENDED
  | CHANGED
}
  • CHECK TABLE返回一个具有下表所示列的结果集。语句可能为每个被检查的表产生许多行信息。最后一行的Msg_type值为status,Msg_text通常应该是OK。
    • Table:表名
    • Op:值永远是check
    • Msg_type:status | error | info | note | warning
    • Msg_text:说明文字
  • FOR UPGRADE选项检查命名的表是否与当前版本的MySQL兼容。如果全面检查成功,服务器会用当前的MySQL版本号标记该表的.frm文件。标记.frm文件可以确保服务器对该表的同一版本的进一步检查是快速的。
  • 检查数据的一致性:
    • QUICK:不要扫描行来检查不正确的链接。适用于InnoDB和MyISAM表和视图。
    • FAST:只检查那些没有被正确关闭的表。忽略InnoDB;只适用于MyISAM表和视图。
    • CHANGED:仅检查自上次检查后被改变的表或没有被正确关闭的表。忽略了InnoDB;只适用于MyISAM表和视图。
    • MEDIUM:扫描行以验证被删除的链接是否有效。这也是为行计算一个键的校验和,并且用计算出的键的校验和来验证它。忽略InnoDB;只适用于MyISAM表和视图。
    • EXTENDED:为每一行的所有键做一个完整的键查询。这可以确保表是100%一致的,但是需要很长的时间。忽略InnoDB;只适用于MyISAM表和视图。
    • 如果没有指定QUICK、MEDIUM或EXTENDED选项,MyISAM表的默认检查类型是MEDIUM。

官方参考文档

4、总结

  1. CHECK TABLE可以检查一个或多个表的结构或索引是否有错误,适用于InnoDB、MyISAM、ARCHIVE和CSV表。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值