范围分区:

CREATE TABLE BIGTABLE

(

ID INT,

SNPTIME DATETIME NOT NULL,

VALUE VARCHAR(20),

PRIMARY KEY (SNPTIME, ID)

) ENGINE=InnoDB

partition by range (TO_DAYS(SNPTIME))

(

PARTITION p1 VALUES LESS THAN (to_days('2009-1-31')),

PARTITION p2 VALUES LESS THAN (to_days('2009-2-28')),

PARTITION p3 VALUES LESS THAN (to_days('2008-3-31')),

PARTITION p4 VALUES LESS THAN (to_days('2008-4-30')),

PARTITION p5 VALUES LESS THAN (to_days('2008-5-31')),

PARTITION p6 VALUES LESS THAN (to_days('2008-6-30')),

PARTITION p7 VALUES LESS THAN (to_days('2008-7-31')),

PARTITION p8 VALUES LESS THAN (to_days('2008-8-31')),

PARTITION p9 VALUES LESS THAN (to_days('2008-9-30')),

PARTITION p10 VALUES LESS THAN (to_days('2008-10-31')),

PARTITION p11 VALUES LESS THAN (to_days('2008-11-30')),

PARTITION p12 VALUES LESS THAN (to_days('2008-12-31')),

PARTITION p13VALUES LESS THAN MAXVALUE

) ;

注意一点:一定要有主键,并且主键要包括分区键。

但是,如果必须要分区,而分区中的分区键不想使用(业务不允许)主键的时候,可以采用两步走的办法。

1、建立表,带有主键。

2、删除主键,建立独立索引。

这样在插入数据的时候还是能够按部就班地进入各自所属的分区表。

给已存在的表加分区

ALTER TABLE SNP_SWITCH

partition by RANGE (TO_DAYS(RPTTIME))

(PARTITION P1210 VALUES LESS THAN (735172) ENGINE = MYISAM,

PARTITION P1211 VALUES LESS THAN (735202) ENGINE = MYISAM,

PARTITION P1212 VALUES LESS THAN (735233) ENGINE = MYISAM,

PARTITION P1301 VALUES LESS THAN (735264) ENGINE = MYISAM,

PARTITION P1302 VALUES LESS THAN (735292) ENGINE = MYISAM,

PARTITION P1303 VALUES LESS THAN (735323) ENGINE = MYISAM,

PARTITION P1304 VALUES LESS THAN (735353) ENGINE = MYISAM,

PARTITION P1305 VALUES LESS THAN (735384) ENGINE = MYISAM,

PARTITION P1306 VALUES LESS THAN (735414) ENGINE = MYISAM,

PARTITION P1307 VALUES LESS THAN (735445) ENGINE = MYISAM,

PARTITION P1308 VALUES LESS THAN (735476) ENGINE = MYISAM,

PARTITION P1309 VALUES LESS THAN (735506) ENGINE = MYISAM,

PARTITION P1310 VALUES LESS THAN (735537) ENGINE = MYISAM,

PARTITION P1311 VALUES LESS THAN (735567) ENGINE = MYISAM,

PARTITION P1312 VALUES LESS THAN (735598) ENGINE = MYISAM,

PARTITION P1401 VALUES LESS THAN (735629) ENGINE = MYISAM,

PARTITION P1402 VALUES LESS THAN (735657) ENGINE = MYISAM,

PARTITION P1403 VALUES LESS THAN (735688) ENGINE = MYISAM,

PARTITION P1404 VALUES LESS THAN (735718) ENGINE = MYISAM,

PARTITION P1405 VALUES LESS THAN (735749) ENGINE = MYISAM,

PARTITION P1406 VALUES LESS THAN (735779) ENGINE = MYISAM,

PARTITION P1407 VALUES LESS THAN (735810) ENGINE = MYISAM,

PARTITION P1408 VALUES LESS THAN (735841) ENGINE = MYISAM,

PARTITION P1409 VALUES LESS THAN (735871) ENGINE = MYISAM,

PARTITION P1410 VALUES LESS THAN (735902) ENGINE = MYISAM,

PARTITION P1411 VALUES LESS THAN (735932) ENGINE = MYISAM,

PARTITION P1412 VALUES LESS THAN (735963) ENGINE = MYISAM,

PARTITION P1501 VALUES LESS THAN (735994) ENGINE = MYISAM,

PARTITION P1502 VALUES LESS THAN (736022) ENGINE = MYISAM,

PARTITION P1503 VALUES LESS THAN (736053) ENGINE = MYISAM,

PARTITION P1504 VALUES LESS THAN (736083) ENGINE = MYISAM,

PARTITION P1505 VALUES LESS THAN (736114) ENGINE = MYISAM,

PARTITION P1506 VALUES LESS THAN (736144) ENGINE = MYISAM,

PARTITION P1507 VALUES LESS THAN (736175) ENGINE = MYISAM,

PARTITION P1508 VALUES LESS THAN (736206) ENGINE = MYISAM,

PARTITION P1509 VALUES LESS THAN (736236) ENGINE = MYISAM,

PARTITION P1510 VALUES LESS THAN (736267) ENGINE = MYISAM,

PARTITION P1511 VALUES LESS THAN (736297) ENGINE = MYISAM,

PARTITION P1512 VALUES LESS THAN (736328) ENGINE = MYISAM,

PARTITION P1600 VALUES LESS THAN (741807) ENGINE = MYISAM);

HASH分区:

create table k1(v1 int, v2 int, v3 int, d datetime) partition by hash (to_days(d)) partitions 3660;

mysql 安建分区_mysql表分区相关推荐

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

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

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

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

  3. MySQL按某个字段建立表分区_mysql表分区

    1. 概述 通过删除仅包含该数据的分区(或多个分区),通常可以轻松地从分区表中删除失去其实用性的数据.相反,在某些情况下,通过添加一个或多个新分区来特别存储该数据,可以极大地促进添加新数据的过程. 由 ...

  4. maxvalue mysql自动分区_mysql 表分区按照数据量自动分区+定时器

    DELIMITER $$ DROP PROCEDURE IF EXISTS `set_partition`$$ CREATE  PROCEDURE `set_partition`(tableName ...

  5. mysql按照时间自动创建分区表_mysql 表分区、按时间函数分区、删除分区、自动添加表分区...

    mysql 表分区的几种方式: RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区. LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进 ...

  6. mysql实验总结存在问题_mysql表分区实验总结

    草稿丢失,发表得不完整,稍后重新整理 mysql表分区技术能有效解决水平拆分和垂直拆分的不足,可操作性和效率都更优.以下是一些实验总结. InnoDB引擎需先在配置文件中设置: innodb_file ...

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

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

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

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

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

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

最新文章

  1. Java排序算法:冒泡排序
  2. 线程安全的集合类、CopyOnWrite机制介绍(转)
  3. mysql触发器查询别的表_Oracle触发器查询统计本表
  4. 史上四大“杀人”建筑,烧掉几百亿,却犯低级错误,网友:有钱人的智商,我不懂
  5. ssl提高组周六备考赛【2018.10.20】
  6. Word2vec学习笔记总结
  7. 当前方法的代码已经过优化,因此无法计算表达式的值
  8. 红黑树真的没你想的那么难!
  9. jboss:在standalone.xml中设置系统属性(system-properties)
  10. 学习linux心得,linux学习心得范文
  11. java档案管理系统_基于JAVA的简单档案管理系统
  12. python身份证号真假验证_【趣味案例】用python制作全国身份证号验证及查询系统...
  13. directx初第一卷
  14. matlab计算abc三相短路电流_电工都知道三相电动机按一千瓦两个电流计算 却不会计算公式...
  15. 详解JAVA的getBytes()方法
  16. 通过阅读饥荒代码理解树人机制
  17. windows微信双开
  18. Ros学习笔记(一)Ros中HelloWorld实现(C++/Python)
  19. 自行搭建app分发平台
  20. 谁说NTFS不支持UEFI启动的?启动U盘放不了超过4G的文件怎么办?Server2016 Win10 U盘UEFI启动制作方法...

热门文章

  1. 全球及中国无线音频扬声器行业前景预测及“十四五”投资规划建议报告2022-2028年
  2. 关于Google不能搜索之解决方案
  3. 使用USBASP给Arduino烧写bootloader教程
  4. Android搭建简单的socket服务器——基于TCP
  5. VMware虚拟机无鼠标、鼠标无反应
  6. 龙腾出行基于Kubernetes的DevOps流水线实战
  7. css -- js动态改变before和after
  8. java cooki的使用
  9. c语言给定n个十六进制正整数,给定n个十六进制正整数,输出它们对应的八进制数。...
  10. python三种结构_Python基础05 三种基本结构选择结构