本文整理自网络,侵删。
目录
- 一、ANALYZE和CHECK PARTITION 分析和检查分区
- 二、REPAIR 修复分区
- 三、OPTIMIZE 分区
- 四、REBUILD分区
- 五、新增和删除分区
前言:
分区是一种表的设计模式,正确的分区可以极大地提升数据库的查询效率,完成更高质量的SQL编程。但是如果错误地使用分区,那么分区可能带来毁灭性的的结果。
分区功能并不是在存储引擎层完成的,因此不只有InnoDB存储引擎支持分区,常见的存储引擎MyISAM、NDB等都支持分区。但是并不是所有的存储引擎都支持,如CSV、FEDORATED、MERGE等就不支持分区。在使用此分区功能前,应该对选择的存储引擎对分区的支持有所了解。
MySQL数据库在5.1版本时添加了对分区的支持,分区的过程是将一个表或索引分解为多个更小、更可管理的部分。就访问数据库的应用而言,从逻辑上讲,只有一个表或一个索引,但是在物理上这个表或索引可能由数十个物理分区组成。每个分区都是独立的对象,可以独自处理,也可以作为一个更大对象的一部分进行处理。
MySQL数据库支持的分区类型为水平分区(指将同一个表中不同行的记录分配到不同的物理文件中),并不支持垂直分区(指将同一表中不同列的记录分配到不同的物理文件中)。此外,MySQL数据库的分区是局部分区索引,一个分区中既存放了数据又存放了索引。而全局分区是指,数据存放在各个分区中,但是所有数据的索引放在一个对象中。目前,MySQL数据库还不支持全局分区,接下来我们一起来看看分区表的管理吧!
一、ANALYZE和CHECK PARTITION 分析和检查分区
ANALYZE分析分区:
ALTER TABLE t_test_task_result ANALYZE PARTITION p20220218,p20220219; +------------------------------------------+---------+----------+----------+ | Table | Op | Msg_type | Msg_text | +------------------------------------------+---------+----------+----------+ | testdb.t_test_task_result | analyze | status | OK | +------------------------------------------+---------+----------+----------+ 1 row in set (0.01 sec)
CHECK 检查分区是否存在错误:
?ALTER TABLE t_test_task_result check PARTITION p20220218,p20220219; +------------------------------------------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +------------------------------------------+-------+----------+----------+ | testdb.t_test_task_result | check | status | OK | +------------------------------------------+-------+----------+----------+ 1 row in set (0.03 sec)
二、REPAIR 修复分区
ALTER TABLE t_test_task_result repair PARTITION p20220218,p20220219; +------------------------------------------+--------+----------+----------+ | Table | Op | Msg_type | Msg_text | +------------------------------------------+--------+----------+----------+ | testdb.t_test_task_result | repair | status | OK | +------------------------------------------+--------+----------+----------+
三、OPTIMIZE 分区
该命令主要是用于回收空闲空间和分区的碎片整理。对分区执行该命令,相当于依次对分区执行 CHECK PARTITION, ANALYZE PARTITION,REPAIR PARTITION命令。
相关阅读 >>
mysql的left join、right join、inner join
更多相关阅读请进入《mysql》频道 >>

数据库系统概念 第6版
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MySQL分区表管理命令汇总
相关推荐
评论
管理员已关闭评论功能...