1.插入测试数据

1.usera

插入500w数据

2.userb

插入500w数据

3.userall

(主表)

usert1 (子表) 插入250w数据

usert2 (子表) 插入250w数据

4.userall2

(主表)

usert3 (子表) 插入250w数据

usert4 (子表) 插入250w数据

建表语句

CREATE TABLE usertb(

id serial,

uname varchar(20) ,

ucreatetime datetime ,

age int(11))

ENGINE=MYISAM

DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci

AUTO_INCREMENT=1

ROW_FORMAT=COMPACT;

CREATE TABLE usertall(

id serial,

uname varchar(20) ,

ucreatetime datetime ,

age int(11))

ENGINE=MERGE union(usert1,usert2) insert_method=last

DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci

AUTO_INCREMENT=1

ROW_FORMAT=COMPACT;

使用存储过程插入测试数据

delimiter $$

SET AUTOCOMMIT = 0$$

create procedure test1()

begin

declare v_cnt decimal (10) default 0 ;

dd:loop

insert into userta values

(null,'用户1',now(),20),

(null,'用户2',now(),20),

(null,'用户3',now(),20),

(null,'用户4',now(),20),

(null,'用户5',now(),20),

(null,'用户6',now(),20),

(null,'用户7',now(),20),

(null,'用户8',now(),20),

(null,'用户9',now(),20),

(null,'用户0',now(),20);

commit;

set v_cnt = v_cnt+10 ;

if v_cnt = 5000000 then leave dd;

end if;

end loop dd ;

end;$$

delimiter;

调用存储过程

call test1;

测试查询时间

select * from userta; --3.63s

注意点

1.分表必须保证主表和子表表结构一致,否则报错 Error Code : 1168 Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist

mysql merge 分区_mysql merge 分区相关推荐

  1. mysql数据库建新分区_mysql数据库分区

    日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表.这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕.分表和表分 ...

  2. mysql的局限_Mysql数据分区局限性大总结

    对Mysql分区表的局限性做了一些总结,因为个人能力以及测试环境的原因,有可能有错误的地方,还请大家看到能及时指出,当然有兴趣的朋友可以去官方网站 查阅.供以后参考用: 本文测试的版本 mysql&g ...

  3. mysql partition 语法_MySQL partition分区小结

    MySQL partition分区 分区概念 分区针对不同的数据库,具有不同的特性.在这里专门针对MySQL数据库而言.在MySQL数据库里,分区这个概念是从mysql 5.1才开始提供的.不过目前只 ...

  4. mysql 配置分区_Mysql的分区配置实验

    /** *mysql 数据分区实验 *@auther:luowen *@time:2013-07-26*/ //1.创建分区表 /*分区类型 1.range分区(按照一段区间分区) 2.list分区( ...

  5. mysql 交换 表分区_mysql分区表分区数据和普通表交换

    前言 在介绍交换分区之前,我们先了解一下 mysql 分区. 数据库的分区有两种:水平分区和垂直分区.而MySQL暂时不支持垂直分区,因此接下来说的都是水平分区.水平分区即:以行为单位对表进行分区.比 ...

  6. mysql 水平分区_MySQL水平分区,垂直分区

    坚信的物理设计在对高级数据库的性能影响上远比其他因素重要.给大家说一下经过专家对Oracle的研究,他们解释了为什么拙劣的物理设计是数据库停机(无论是有计划的还是没计划的)背后的主要原因.但在这点上俺 ...

  7. mysql myisam表分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)

    一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了1000万条,那么就可以根据入库日期将表分区,也可以根据所在地将表 ...

  8. mysql 查看 分区_Mysql表分区状态查询

    一.查询mysql表是否为分区表:可以查看表具有哪几个分区.分区的方法.分区中数据的记录数等信息 SELECT PARTITION_NAME,PARTITION_METHOD,PARTITION_EX ...

  9. mysql merge 语句_Mysql merge引擎介绍

    一. 什么是MERGE引擎 MERGE存储引擎把一组MyISAM数据表当做一个逻辑单元来对待,让我们可以同时对他们进行查询. 二. 应用场景 如果需要把日志纪录不停的录入MySQL数据库,并且每天.每 ...

  10. mysql 安建分区_mysql表分区

    范围分区: CREATE TABLE BIGTABLE ( ID INT, SNPTIME DATETIME NOT NULL, VALUE VARCHAR(20), PRIMARY KEY (SNP ...

最新文章

  1. 《动手学数据分析》开源教程完整发布!
  2. 如何将Numpy加速700倍?用 CuPy 呀
  3. 11月29号例会记录
  4. MySQL 备份和恢复策略(二)
  5. 魅族C++协程框架(Kiev)技术内幕
  6. 系统进程间的同步机制
  7. ML之xgboost:利用xgboost算法对breast_cancer数据集实现二分类预测并进行graphviz二叉树节点图可视化
  8. bzoj 4443 [Scoi2015]小凸玩矩阵 网络流,二分
  9. 跟我一起屏蔽百度搜索页面右侧的内容
  10. LeetCode 343. Integer Break
  11. libevent for android
  12. 你不了解PHP的10件事情!
  13. android 打开SD卡文件夹,并获得选中文件的路径怎么实现?
  14. Windows7 64位下SDK Manager.exe无法运行问题解决方法
  15. 运维网发布的nagioscacti配置文档
  16. 这才是打开风变编程的正确操作方式
  17. PC端网页布局——世纪佳缘(四)注册登录
  18. 姜小白的Python日记Day12 迭代器与内置函数
  19. Installation Oracle11gR2 RAC on SuSE Linux Enterprise Server 11
  20. React innerHTML

热门文章

  1. odoo12 mysql_odoo12从零开始:二、1)个性化定制odoo12之修改数据库创建页面
  2. python登录代码思路_终于找到一个思路比较清晰的可以模拟登录百度的代码!
  3. spring mvc 接收List数组类型参数
  4. RedHat7.0启动后黑屏
  5. linux 备份数据,LINUX下备份数据
  6. thinkphp当前php路径,分析thinkphp常见路径用法分析
  7. mysql 语句性能分析_mysql的sql语句的性能诊断分析
  8. pandas最大的时间间隔_pandas计算最大连续间隔的方法
  9. python输入文件名读取文件_[Python] python3 文件操作:从键盘输入、打开关闭文件、读取写入文件、重命名与删除文件等...
  10. 加工中心局部坐标系g52设定_CNC加工中心程序代码大全,数控加工必备!