首页 / MYSQL / merge存储引擎应用_MySQL
merge存储引擎应用_MySQL
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了merge存储引擎应用_MySQL,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2779字,纯文字阅读大概需要4分钟。
内容图文
![merge存储引擎应用_MySQL](/upload/InfoBanner/zyjiaocheng/572/8209b3b04112408ab43b7ac2c58a0af0.jpg)
MRG_MyISAM,可以将同构的表合在一起使用。文档上说的“同构”指的是表定义相同,表的索引相同,但根据测试,索引结构不一样也没有问题。甚至在某些情况下,必须不同才能取得正确的数据。
我们创建两个表m1,m2,并各插入几条数据。
1 mysql> show create table m1/G
2 *************************** 1. row ***************************
3 Table: m1
4 Create Table: CREATE TABLE `m1` (
5 `a` int(11) NOT NULL,
6 `b` int(11) DEFAULT NULL,
7 PRIMARY KEY (`a`)
8 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
9 1 row in set (0.00 sec)
10
11 mysql> show create table m2/G
12 *************************** 1. row ***************************
13 Table: m2
14 Create Table: CREATE TABLE `m2` (
15 `a` int(11) NOT NULL,
16 `b` int(11) DEFAULT NULL,
17 PRIMARY KEY (`a`)
18 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
19 1 row in set (0.00 sec)
20
21 mysql> select * from m1;
22 +---+------+
23 | a | b |
24 +---+------+
25 | 1 | 1 |
26 | 2 | 2 |
27 | 3 | 3 |
28 +---+------+
29 3 rows in set (0.00 sec)
30
31 mysql> select * from m2;
32 +---+------+
33 | a | b |
34 +---+------+
35 | 1 | 1 |
36 | 2 | 2 |
37 | 3 | 3 |
38 +---+------+
39 3 rows in set (0.00 sec)
接下来,我们创建一个merge表m,注意,我们没有为m指定任何的key,但是该merge表是可以使用的:
1 mysql> show create table m/G
2 *************************** 1. row ***************************
3 Table: m
4 Create Table: CREATE TABLE `m` (
5 `a` int(11) NOT NULL,
6 `b` int(11) DEFAULT NULL
7 ) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`m1`,`m2`)
8 1 row in set (0.00 sec)
9
10 mysql> select * from m;
11 +---+------+
12 | a | b |
13 +---+------+
14 | 1 | 1 |
15 | 2 | 2 |
16 | 3 | 3 |
17 | 1 | 1 |
18 | 2 | 2 |
19 | 3 | 3 |
20 +---+------+
21 6 rows in set (0.00 sec)
对m加上primary key(a)之后,毫无疑问,这也是可以使用的,但是因为key是primay key,所以只能检索出一条记录:
1 mysql> show create table m/G
2 *************************** 1. row ***************************
3 Table: m
4 Create Table: CREATE TABLE `m` (
5 `a` int(11) NOT NULL,
6 `b` int(11) DEFAULT NULL,
7 PRIMARY KEY (`a`)
8 ) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`m1`,`m2`)
9 1 row in set (0.00 sec)
10
11 mysql> select * from m where a=1;
12 +---+------+
13 | a | b |
14 +---+------+
15 | 1 | 1 |
16 +---+------+
17 1 row in set (0.00 sec)
将primary key改成普通的key之后:
1 mysql> alter table m add index (a), drop primary key;
2 Query OK, 0 rows affected (0.00 sec)
3 Records: 0 Duplicates: 0 Warnings: 0
4
5 mysql> select * from m where a=1;
6 +---+------+
7 | a | b |
8 +---+------+
9 | 1 | 1 |
10 | 1 | 1 |
11 +---+------+
12 2 rows in set (0.00 sec)
merge表在很多情况下都可以给我们带来便利,特别是在分表的环境中尤其合适。
欢迎上网易彩票买彩票啊~内容总结
以上是互联网集市为您收集整理的merge存储引擎应用_MySQL全部内容,希望文章能够帮你解决merge存储引擎应用_MySQL所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。