mysql 安建分区_mysql表分区
范围分区:
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表分区相关推荐
- mysql myisam表分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了1000万条,那么就可以根据入库日期将表分区,也可以根据所在地将表 ...
- mysql 查看 分区_Mysql表分区状态查询
一.查询mysql表是否为分区表:可以查看表具有哪几个分区.分区的方法.分区中数据的记录数等信息 SELECT PARTITION_NAME,PARTITION_METHOD,PARTITION_EX ...
- MySQL按某个字段建立表分区_mysql表分区
1. 概述 通过删除仅包含该数据的分区(或多个分区),通常可以轻松地从分区表中删除失去其实用性的数据.相反,在某些情况下,通过添加一个或多个新分区来特别存储该数据,可以极大地促进添加新数据的过程. 由 ...
- maxvalue mysql自动分区_mysql 表分区按照数据量自动分区+定时器
DELIMITER $$ DROP PROCEDURE IF EXISTS `set_partition`$$ CREATE PROCEDURE `set_partition`(tableName ...
- mysql按照时间自动创建分区表_mysql 表分区、按时间函数分区、删除分区、自动添加表分区...
mysql 表分区的几种方式: RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区. LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进 ...
- mysql实验总结存在问题_mysql表分区实验总结
草稿丢失,发表得不完整,稍后重新整理 mysql表分区技术能有效解决水平拆分和垂直拆分的不足,可操作性和效率都更优.以下是一些实验总结. InnoDB引擎需先在配置文件中设置: innodb_file ...
- mysql数据库建新分区_mysql数据库分区
日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表.这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕.分表和表分 ...
- mysql 交换 表分区_mysql分区表分区数据和普通表交换
前言 在介绍交换分区之前,我们先了解一下 mysql 分区. 数据库的分区有两种:水平分区和垂直分区.而MySQL暂时不支持垂直分区,因此接下来说的都是水平分区.水平分区即:以行为单位对表进行分区.比 ...
- mysql 配置分区_Mysql的分区配置实验
/** *mysql 数据分区实验 *@auther:luowen *@time:2013-07-26*/ //1.创建分区表 /*分区类型 1.range分区(按照一段区间分区) 2.list分区( ...
最新文章
- Java排序算法:冒泡排序
- 线程安全的集合类、CopyOnWrite机制介绍(转)
- mysql触发器查询别的表_Oracle触发器查询统计本表
- 史上四大“杀人”建筑,烧掉几百亿,却犯低级错误,网友:有钱人的智商,我不懂
- ssl提高组周六备考赛【2018.10.20】
- Word2vec学习笔记总结
- 当前方法的代码已经过优化,因此无法计算表达式的值
- 红黑树真的没你想的那么难!
- jboss:在standalone.xml中设置系统属性(system-properties)
- 学习linux心得,linux学习心得范文
- java档案管理系统_基于JAVA的简单档案管理系统
- python身份证号真假验证_【趣味案例】用python制作全国身份证号验证及查询系统...
- directx初第一卷
- matlab计算abc三相短路电流_电工都知道三相电动机按一千瓦两个电流计算 却不会计算公式...
- 详解JAVA的getBytes()方法
- 通过阅读饥荒代码理解树人机制
- windows微信双开
- Ros学习笔记(一)Ros中HelloWorld实现(C++/Python)
- 自行搭建app分发平台
- 谁说NTFS不支持UEFI启动的?启动U盘放不了超过4G的文件怎么办?Server2016 Win10 U盘UEFI启动制作方法...
热门文章
- 全球及中国无线音频扬声器行业前景预测及“十四五”投资规划建议报告2022-2028年
- 关于Google不能搜索之解决方案
- 使用USBASP给Arduino烧写bootloader教程
- Android搭建简单的socket服务器——基于TCP
- VMware虚拟机无鼠标、鼠标无反应
- 龙腾出行基于Kubernetes的DevOps流水线实战
- css -- js动态改变before和after
- java cooki的使用
- c语言给定n个十六进制正整数,给定n个十六进制正整数,输出它们对应的八进制数。...
- python三种结构_Python基础05 三种基本结构选择结构