MYSQL的引擎不是一般的多,这次说到的是MERGE,这个引擎有很多特殊的地方:

MERGE引擎类型允许你把许多结构相同的表合并为一个表。然后,你可以执行查询,从多个表返回的结果就像从一个表返回的结果一样。每一个合并的表必须有同样的表定义。

MERGE存储引擎在下面这种使用场合会最为有用,如果需要把日志纪录不停的录入MySQL数据库,并且每天、每周或者每个月都创建一个单一的表,而且要制作来自多个表的合计查询,MERGE表这时会非常有效。然而,这项功能有局限性。你只能合并MyISAM表而且必须严格遵守相同的表定义的限制。虽然这看起来好像是一个大问题,但是,如果你使用另外一种表类型(例如InnoDB),这种合并可能就不需要了。

其创建方法如下:

他将多个表在逻辑上当作一个表来查询。他建立后有两个文件, 
.frm 表结构定义 
.mrg union表的名字清单

两个基本表: 
CREATE TABLE TEST_MERGE_1( 
ID INT(5) NOT NULL, 
VALUE VARCHAR(100) NOT NULL, 
PRIMARY KEY(ID) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 
CREATE TABLE TEST_MERGE_2( 
ID INT(5) NOT NULL, 
VALUE VARCHAR(100) NOT NULL, 
PRIMARY KEY(ID) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8

MERGE表的建立: 
CREATE TABLE TEST_MERGE( 
ID INT(5) NOT NULL, 
VALUE VARCHAR(100) NOT NULL, 
PRIMARY KEY(ID) 
) ENGINE=MRG_MyISAM DEFAULT CHARSET=utf8 INSERT_METHOD=LAST UNION=(TEST_MERGE_1,TEST_MERGE_2) ;

1. 此表类似于SQL中的union机制。 
2. 此表结构必须与基本表完全一致,包括列名、顺序。UNION表必须同属一个DATABASE。 
3. 基本表类型必须是MyISAM。 
4. 可以通过修改.mrg文件来修改MERGE表,每个基本表的名字占一行。注意:修改后要通过FLUSH TABLES刷新表缓存。 
5. 对基本表的更改可以直接反映在此表上。 
6. INSERT_METHOD的取值可以是: 0 不允许插入 FIRST 插入到UNION中的第一个表 LAST 插入到UNION中的最后一个表。(4.0之后可用) 
7. 定义在它上面的约束没有任何作用,约束是由基本表控制的,例如两个基本表中存在着同样的一个Key值,那么在MERGE表中会有两个一样的Key值。

原文:http://blog.sina.com.cn/s/blog_753035050100wi4m.html

MYSQL的MERGE存储引擎相关推荐

  1. mysql利用merge存储引擎分表的方法

    2019独角兽企业重金招聘Python工程师标准>>> 1.创建分表,和主表的表结构相同,这里创建3个表 1 2 CREATE TABLE 新表 LIKE 旧表; CREATE TA ...

  2. 如何查看MySQL的当前存储引擎?

    如何查看MySQL的当前存储引擎? 一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看:看你的mysql现在已提供什么存储引擎: mysql> show engines;看你的m ...

  3. MySQL数据库:存储引擎

    一.什么是存储引擎: 存储引擎是MylSQL的核心,是数据库底层软件组织,数据库使用存储引擎进行创建.查询.更新和删除数据.不同的存储引擎提供不同的存储机制.索引技巧.锁级别.事务等功能.存储引擎是基 ...

  4. MySql中有哪些存储引擎

    什么是存储引擎呢? 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和 ...

  5. mysql常用的存储引擎_Mysql存储引擎

    什么是存储引擎? 关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于Excel的电子表格的形式.有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的表读取 ...

  6. 阿里P8架构师谈:MySQL有哪些存储引擎,各自的优缺点,应用场景

    经常面试都会问到MYSQL有哪些存储引擎,以及各自的优缺点.今天主要分享常见的存储引擎:MyISAM.InnoDB.MERGE.MEMORY(HEAP).BDB(BerkeleyDB)等,以及最常用的 ...

  7. mysql查看现在使用的引擎_如何查看MySQL的当前存储引擎?

    如何查看MySQL的当前存储引擎? 一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看: 看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你 ...

  8. 【建议收藏】15755字,讲透MySQL性能优化(包含MySQL架构、存储引擎、调优工具、SQL、索引、建议等等)

    0. 目录 1)MySQL总体架构介绍 2)MySQL存储引擎调优 3)常用慢查询分析工具 4)如何定位不合理的SQL 5)SQL优化的一些建议 1 MySQL总体架构介绍 1.1 MySQL总体架构 ...

  9. 【MySQL】InnoDB存储引擎

    [MySQL]InnoDB存储引擎 1 存储引擎的种类 常见的有三种: 存储引擎 说明 InnoDB 5.5 版本后 MySQL 的 默认数据库存储引擎,支持事务和行级锁 ,比 MyISAM 处理,速 ...

最新文章

  1. mysql字符串外键约束_MySQL中的约束函数主外键
  2. 7.1 pdo 宝塔面板php_宝塔面板配置阿里云服务器步骤和教程
  3. 通过反射获取子类和父类定义的属性
  4. feign_与Feign客户轻松进行REST通信
  5. 用ASDM管理思科PIX防火墙
  6. python用户登录_python用户登录系统
  7. 【TensorFlow系列二】经典损失函数(交叉熵、均方差)
  8. 实用必备xp框架模块_两款实用工具类软件,是你的日常必备!
  9. java使用smtp发送邮件问题
  10. web前端网站推荐(后续继续补充)
  11. try-expect在集合处理中的应用
  12. Vmware 6.5.1正式版在Ubuntu 8.10下面运行非常缓慢的解决方
  13. 阿里网盘资源查找使用技巧
  14. 2018东北四省赛 Spell Boost DP
  15. 淘宝数据可视化大屏案例(Hadoop实验)
  16. docker xware下载慢_【原创】基于Docker实现迅雷远程下载
  17. MFC之图像绘制---高速绘图控件(High-speed Charting Control)应用(一)
  18. Lua--棋牌游戏开发(概念性设计二
  19. 2012 款斯柯达明锐车行驶中发动机偶尔自动熄火
  20. python 导入第三方包_python 导入第三方包---

热门文章

  1. cryptojs php 互通_关于PHP7和CryptoJS的AES加密方式互通
  2. sscanf实用功能简介
  3. STM32CubeMX简介、下载及安装(NB-IoT专栏—基础篇3)
  4. 多维数组与指针之间的关系详解
  5. 吴恩达神经网络和深度学习——第四周笔记
  6. Udacity机器人软件工程师课程笔记(七)-ROS介绍和Turtlesim包的使用
  7. Udacity机器人软件工程师课程笔记(五)-样本搜索和找回-基于漫游者号模拟器-自主驾驶
  8. 在CentOS 6.3 64bit上利用iptables开放指定端口的方法
  9. Ubuntu 14.04 64位字体美化(使用文泉驿微黑)
  10. Unity创造没有代码的游戏学习教程