mysql 分区合并_mysql中的合并表和分区表详解(经常使用的概念)

分区表是mysql5.1之后的新特性,合并表已经存在很长时间了。这篇文章主要介绍这两个概念以及他们基本的操作。

一、合并表

合并表说实话是一种将要被淘汰的技术,但是掌握了合并表的概念再去看分区表就比较容易理解一点。

合并表其实就是合并了多个子表的逻辑表,子表使用了myisam存储引擎物理子表,合并表使用merge存储引擎,逻辑表和子表的结构完全相同(包括字段、索引等)。

删除一个合并表,它的子表不会受任何影响,而如果删除其中一个子表则可能会有不同的后果,这要视操作系统而定。

下面我们进行实操一下:创建量两张物理子表t1和t2,然后创建他们俩的合并表。1#创建表t1和t2,存储引擎是myisam

2mysql> create table t1( data int not null primary key )engine=myisam;

3Query OK, 0 rows affected (0.00 sec)

4mysql> create table t2( data int not null primary key )engine=myisam;

5#创建合并表,存储引擎是merge

6mysql> create table t3( data int not null primary key )

7    engine=merge union=(t1,t2) insert_method=last;

8Query OK, 0 rows affected (0.00 sec)

9#下面插入数据:t1插入123,t2插入234

10Query OK, 0 rows affected (0.01 sec)

11mysql> insert into t1 values(1),(2),(3);

12Query OK, 3 rows affected (0.01 sec)

13Records: 3  Duplicates: 0  Warnings: 0

14mysql> insert into t2 values(2),(3),(4);

15Query OK, 3 rows affected (0.00 sec)

16Records: 3  Duplicates: 0  Warnings: 0

在上面我们进行了一些初始化操作。而且我们在创建合并表的时候,指定了insert

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL 分区是一种将大型水平分成多个部分的技术,这有助于提高查询和数据管理的效率。在 MySQL ,可以使用 RANGE、LIST、HASH 和 KEY 四种分区类型来定义分区方式。 下面是 MySQL 分区的详细操作步骤: 1. 创建时定义分区方式 在创建的时候,可以指定分区方式。例如,使用 RANGE 分区方式将按照数值范围进行分区: ``` CREATE TABLE mytable ( id INT, value INT ) PARTITION BY RANGE (value) ( PARTITION p0 VALUES LESS THAN (10), PARTITION p1 VALUES LESS THAN (20), PARTITION p2 VALUES LESS THAN (MAXVALUE) ); ``` 2. 插入数据 向插入数据时,MySQL 会自动将数据插入到正确的分区。例如,插入一个 value 值为 5 的数据: ``` INSERT INTO mytable (id, value) VALUES (1, 5); ``` 3. 查询数据 在查询数据时,MySQL 可以仅查询特定的分区,而不必扫描整个。例如,查询 value 值在 10 到 20 之间的数据: ``` SELECT * FROM mytable PARTITION (p1); ``` 4. 修改分区 可以使用 ALTER TABLE 语句修改分区方式,例如,将从 RANGE 分区方式修改为 HASH 分区方式: ``` ALTER TABLE mytable PARTITION BY HASH(value) PARTITIONS 4; ``` 5. 合并分区 可以使用 ALTER TABLE 语句将相邻的分区合并为一个分区,例如,将分区 p1 和 p2 合并为一个分区: ``` ALTER TABLE mytable COALESCE PARTITION p1, p2 INTO p3; ``` 6. 删除分区 可以使用 ALTER TABLE 语句删除的某个分区,例如,删除分区 p0: ``` ALTER TABLE mytable DROP PARTITION p0; ``` 以上就是 MySQL 分区的详细操作步骤,可以根据实际需求选择不同的分区方式来提高查询和数据管理的效率。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值