MySQL分区表的使用
MySQL使用分区表的好处:
mysql> CREATE TABLE sale_data (
-> sale_date DATETIME NOT NULL, -> sale_item VARCHAR(2) NOT NULL , -> sale_money DECIMAL(10,2) NOT NULL -> ) www.2cto.com -> PARTITION BY RANGE (YEAR(sale_date)*100+MONTH(sale_date)) ( -> PARTITION p201001 VALUES LESS THAN (201002), -> PARTITION p201002 VALUES LESS THAN (201003), -> PARTITION p201003 VALUES LESS THAN (201004), -> PARTITION p201004 VALUES LESS THAN (201005), -> PARTITION p201005 VALUES LESS THAN (201006), -> PARTITION p201006 VALUES LESS THAN (201007), -> PARTITION p201007 VALUES LESS THAN (201008), -> PARTITION p201008 VALUES LESS THAN (201009), -> PARTITION p201009 VALUES LESS THAN (201010), -> PARTITION pcatchall VLAUES LESS THAN MAXVALUE
-> ); Query OK, 0 rows affected (0.20 sec)
新增分区
mysql> ALTER TABLE sale_data
-> ADD PARTITION (PARTITION p201010 VALUES LESS THAN (201011)); Query OK, 0 rows affected (0.36 sec)
Records: 0 Duplicates: 0 Warnings: 0
删除分区
--当删除了一个分区,也同时删除了该分区中所有的数据。
mysql> ALTER TABLE sale_data DROP PARTITION p201010;
Query OK, 0 rows affected (0.22 sec) www.2cto.com
Records: 0 Duplicates: 0 Warnings: 0
分区的合并
下面的SQL,将p201001 - p201009 合并为3个分区p2010Q1 - p2010Q3
mysql> ALTER TABLE sale_data
-> REORGANIZE PARTITION p201001,p201002,p201003, -> p201004,p201005,p201006, -> p201007,p201008,p201009 INTO -> ( -> PARTITION p2010Q1 VALUES LESS THAN (201004), -> PARTITION p2010Q2 VALUES LESS THAN (201007), -> PARTITION p2010Q3 VALUES LESS THAN (201010) -> ); Query OK, 0 rows affected (1.14 sec)
Records: 0 Duplicates: 0 Warnings: 0
分区的拆分
下面的SQL,将p2010Q1 分区,拆分为s2009 与s2010 两个分区
mysql> ALTER TABLE sale_data REORGANIZE PARTITION p2010Q1 INTO ( -> PARTITION s2009 VALUES LESS THAN (201001),
www.2cto.com
-> PARTITION s2010 VALUES LESS THAN (201004) -> ); Query OK, 0 rows affected (0.36 sec)
Records: 0 Duplicates: 0 Warnings: 0
一个利用不同物理位置数据源做分区的例子:
CREATE TABLE ts (id INT, purchased DATE)
ENGINE=innodb
PARTITION BY RANGE(YEAR(purchased))
SUBPARTITION BY HASH(id)
(
PARTITION p0 VALUES LESS THAN (1990)
(
SUBPARTITION s0 //在大的分区下又有小的分区
DATA DIRECTORY='/usr/local/mysql/data0' //数据源
INDEX DIRECTORY='/usr/local/mysql/index0', //索引数据源
SUBPARTITION s1
DATA DIRECTORY='/usr/local/mysql/data1'
INDEX DIRECTORY='/usr/local/mysql/index1'
),
PARTITION p1 VALUES LESS THAN (MAXVALUE)
(
SUBPARTITION s2
DATA DIRECTORY='/usr/local/mysql/data1'
INDEX DIRECTORY='/usr/local/mysql/index1',
SUBPARTITION s3
DATA DIRECTORY='/usr/local/mysql/data2'
INDEX DIRECTORY='/usr/local/mysql/index2'
)
);
MySQL分区表的使用的更多相关文章
- MySQL 分区表
转载自MySQL 分区表 今天统计数据的时候发现一张表使用了表分区,借此机会记录一下. 1. 什么是表分区? 表分区,是指根据一定规则,将数据库中的一张表分解成多个更小的,容易管理的部分.从逻辑上看, ...
- Mysql --分区表的管理与维护
改变一个表的分区方案只需使用alter table 加 partition_options 子句就可以了.和创建分区表时的create table语句很像 创建表 CREATE TABLE trb3 ...
- 数据切分——Mysql分区表的管理与维护
关于Mysql分区表的介绍可以参考: http://blog.csdn.net/jhq0113/article/details/44592865 关于Mysql分区表的创建可以参考: http://b ...
- 数据切分——Mysql分区表的建立及性能分析
Mysql的安装方法可以参考: http://blog.csdn.net/jhq0113/article/details/43812895 Mysql分区表的介绍可以参考: http://blog.c ...
- MySQL分区表基础
首先要确定MySQL是否支持分区: Mysql> SHOW VARIABLES LIKE '%partition%'; +-----------------------+-------+| Va ...
- (3) MySQL分区表使用方法
1. 确认MySQL服务器是否支持分区表 命令: show plugins; 2. MySQL分区表的特点 在逻辑上为一个表,在物理上存储在多个文件中 HASH分区(HASH) HASH分区的特点 根 ...
- MySQL 分区表原理及数据备份转移实战
MySQL 分区表原理及数据备份转移实战 1.分区表含义 分区表定义指根据可以设置为任意大小的规则,跨文件系统分配单个表的多个部分.实际上,表的不同部分在不同的位置被存储为单独的表.用户所选择的.实现 ...
- MYSQL分区表功能测试简析
1.查看Mysql版本是否支持分区 SHOW VARIABLES LIKE '%partition%'; +-------------------+-------+ | Variable_nam ...
- 详解MySQL分区表
当数据库数据量涨到一定数量时,性能就成为我们不能不关注的问题,如何优化呢? 常用的方式不外乎那么几种: 1.分表,即把一个很大的表达数据分到几个表中,这样每个表数据都不多. 优点:提高并发量,减小锁的 ...
- MySQL分区表使用方法
原文:MySQL分区表使用方法 1. 确认MySQL服务器是否支持分区表 命令: show plugins; 2. MySQL分区表的特点 在逻辑上为一个表,在物理上存储在多个文件中 HASH分区(H ...
随机推荐
- 转载:你可能没注意的CSS单位
出自:http://www.cnblogs.com/dolphinX/p/4097693.html 扶今追昔 CSS中的单位我们经常用到px.pt.em.百分比,px和pt不用多说 em em是相对单 ...
- Matrix对bitmap的一些操作
本篇文章是对使用Matrix对bitmap的旋转与镜像水平垂直翻转进行了详细的分析介绍,需要的朋友参考下 Bitmap convert(Bitmap a, int width, int height ...
- cocos2dx shader实现灰度图android后台切换回来导致图像偏移的问题
转自:http://www.tuicool.com/articles/U3URRrI 项目中经常会遇到将一张图像处理成灰色的需求,为了节省资源,一般不会让美术再做一套同样的灰度图,通常会通过代码处理让 ...
- 【转】【Android测试技巧】01. root后adb shell默认不是root用户时,如何将文件放入手机系统中
http://blog.csdn.net/wirelessqa/article/details/8624208 有些机器root后通过adb shell 后,默认不是root用户,需要输入 su才能切 ...
- CANBus Determining Network Baud Rate, Automatic bit-rate detection
http://www.canbushack.com/blog/index.php?title=determining-network-baud-rate Determining Network Bau ...
- Uva 10167 - Birthday Cake 暴力枚举 随机
Problem G. Birthday Cake Background Lucy and Lily are twins. Today is their birthday. Mother buys ...
- OAB配置
OAB管理: http://blogs.technet.com/b/exchange_chs/archive/2013/01/31/exchange-server-2013-oab-managing- ...
- Xen安全架构sHype/ACM策略配置图文教程
实验要求 1. 熟悉Xen虚拟化平台部署: 2. Xen sHype/ACM安全架构中的Simple TE和Chinese Wall策略及事实上现机制的分析与验证. 第1章 ...
- 菜鸟从零学编程(八)——将MyEclipse项目导入到Eclipse
最近由于种种原因,需要将以前用MyEclipse写的项目迁移到Eclipse中.但是当我将之前的项目import到Eclipse中后,发现根本不能运行.经过一番寻觅,终于让我找到了一种解决的办法.一起 ...
- Android 实现自动接听和挂断电话功能
添加权限 <uses-permission android:name="android.permission.CALL_PHONE"/> <uses-permis ...