摘要: • 对分区表可以通过 ALTER TABLE pt EXCHANGE PARTITION p WITH TABLE nt 命令将一个分区或者是子分区的数据与普通的表的数据相互交换,其本身的表结构不会变化• 交换的分区表和目标表必须结构完全相同,包括字段,类型,索引,存储引擎必须完全一样 mysql> 阅读全文
posted @ 2020-05-07 21:49 丁海龙 阅读(377) 评论(0) 推荐(0) 编辑
摘要: • 对哈希表分区和KEY表分区的管理手段与范围和列表表分区完全不同,比如不能删除表分区,但可以通过ALTER TABLE ... COALESCE PARTITION语句合并表分区,其partition后面的数字代表缩减的个数,而不是缩减到的个数 mysql> CREATE TABLE client 阅读全文
posted @ 2020-05-07 21:45 丁海龙 阅读(108) 评论(0) 推荐(0) 编辑
摘要: • 对列表表分区来说,只要新增加的分区对应的值在之前的表分区中没有出现过,就可以通过 alter table… add partition 来增加 mysql> CREATE TABLE tt ( id INT, data INT ) PARTITION BY LIST(data) -> ( PAR 阅读全文
posted @ 2020-05-07 21:43 丁海龙 阅读(635) 评论(0) 推荐(0) 编辑
摘要: • 通过 alter table 命令可以执行增加,删除,重新定义,合并或者拆分表分区的管理动作 mysql> use course; Database changed mysql> CREATE TABLE tr (id INT, name VARCHAR(50), purchased DATE) 阅读全文
posted @ 2020-05-07 21:42 丁海龙 阅读(169) 评论(0) 推荐(0) 编辑
摘要: • 子表分区,是在表分区的基础上再创建表分区的概念,每个表分区下的子表分区个数必须一致 mysql> CREATE TABLE ts (id INT, purchased DATE) -> PARTITION BY RANGE( YEAR(purchased) ) -> SUBPARTITION B 阅读全文
posted @ 2020-05-07 21:41 丁海龙 阅读(217) 评论(0) 推荐(0) 编辑
摘要: • 哈希表分区,按照一个自定义的函数返回值来确定每个分区包含的数据,这个自定义函数也可以仅仅是一个字段名字• 通过PARTITION BY HASH (expr)子句来表达哈希表分区,其中的expr表达式必须返回一个整数,基于分区个数的取模(%)运算。根据余数插入到指定的分区• 对哈希表分区来说只需 阅读全文
posted @ 2020-05-07 20:59 丁海龙 阅读(167) 评论(0) 推荐(0) 编辑
摘要: • LIST表分区:列表表分区,按照一个一个确定的值来确定每个分区包含的数据• 通过 PARTITION BY LIST(expr) 分区函数表达式必须返回整数,取值范围通过 VALUES IN (value_list) 定义 mysql> CREATE TABLE employees (id IN 阅读全文
posted @ 2020-05-07 20:45 丁海龙 阅读(182) 评论(0) 推荐(0) 编辑
摘要: • RANGE表分区:范围表分区,按照一定的范围值来确定每个分区包含的数据,分区函数使用的字段必须只能是整数类型• 分区的定义范围必须是连续的,且不能有重叠部分,通过使用VALUES LESS THAN来定义分区范围,表分区的范围定义是从小到大定义的 mysql> drop table employ 阅读全文
posted @ 2020-05-07 17:57 丁海龙 阅读(348) 评论(0) 推荐(0) 编辑
摘要: • 但当表中含有主键或唯一键时,则每个被用作分区函数的字段必须是表中唯一键和主键的全部或一部分,否则就无法创建分区表 # 如下的表由于唯一键和主键没有相同的字段,所以无法创建表分区 mysql> CREATE TABLE tnp ( -> id INT NOT NULL AUTO_INCREMENT 阅读全文
posted @ 2020-05-07 11:21 丁海龙 阅读(177) 评论(0) 推荐(0) 编辑
摘要: [root@mysql-master ~]# mysql -u root -p mysql> use course; Database changed mysql> CREATE TABLE employees ( id INT NOT NULL, -> fname VARCHAR(30), lna 阅读全文
posted @ 2020-05-07 09:53 丁海龙 阅读(151) 评论(0) 推荐(0) 编辑