查看分区情况

  1. SELECT * FROM information_schema.PARTITIONS WHERE table_name='table_name';

PARTITION_NAME:分区的名称

PARTITION_METHOD:分区的类型

TABLE_ROWS:分区数据条数

RANGE分区:

  1. create table t (
  2. id int) engine=innodb
  3. partition by range (id) (
  4. partition p0 values less than (10), --id小于10的加入p0分区
  5. partition p1 values less than (20));--id大于等于10小于20的加入p1分区

增加分区

  1. alter table r add partition (partition p2 values less than maxvalue);
    --所有大于等于20的加入p2分区
  1. CREATE TABLE `w` (
  2. `money` INT(10) UNSIGNED NOT NULL,
  3. `date` DATETIME DEFAULT NULL
  4. ) ENGINE=INNODB DEFAULT CHARSET=utf8
  5. PARTITION BY RANGE (YEAR(DATE)) --定义的规则也可以是函数
  6. (PARTITION p2010 VALUES LESS THAN (2010),
  7. PARTITION p2001 VALUES LESS THAN (2011),
  8. PARTITION p2012 VALUES LESS THAN (2012));

 删除分区

  1. alter table w drop partition p2010;

--删除分区,则分区的数据也删除

----------------------------------------------------------------------

 

 LIST分区

  1. CREATE TABLE m (
  2. a INT,
  3. b INT)ENGINE=innnodb
  4. PARTITION BY LIST (b)(
  5. PARTITION p0 VALUES IN (1,2,3,4,5),
  6. PARTITION p1 VALUES IN (6,7,8,9,10));
  7. insert into m values (1,6),(2,7),(3,11),(4,9)

--插入的值(3,11)不符合,如果是innodb引擎,后面(4,9)符合条件不会插入表中,

如果是myisam引擎,后面(4,9)符合条件则会插入表中

----------------------------------------------------------------------

HASH分区

  1. CREATE TABLE m_hash (
  2. a INT,
  3. b DATETIME)ENGINE=innnodb
  4. PARTITION BY HASH (YEAR(b)) --"partition by hash (expr)" expr是一个返回整数的表达式
  5. PARTITIONS 4; --表示要被分割成分区的数量,没有则默认是1

如:加入分区的算法mod(expr,分区数量4)=0 则加入p0

  1. PARTITION BY LINEAR HASH (YEAR(b))

--与hash只是算法不同,返回是值是一样的

----------------------------------------------------------------------

COLUMNS分区

mysql5.5开始支持,视为RANGE分区和LIST分区的一种进化,支持INT,SMALLINT,TINYINT,BIGINT.DATE,DATETIME.CHAR,VARCHAR,BINARY,VARBINARY类型

  1. CREATE TABLE t_columns_range(
  2. a INT,
  3. b DATETIME) ENGINE=INNODB
  4. PARTITION BY RANGE COLUMNS (b) --也可以PARTITION BY LESS COLUMNS (b)
  5. (PARTITION p0 VALUES LESS THAN('2009-01-01'),
  6. PARTITION p1 VALUES LESS THAN('2010-01-01'));

MySQL分区表(转)的更多相关文章

  1. MySQL 分区表

    转载自MySQL 分区表 今天统计数据的时候发现一张表使用了表分区,借此机会记录一下. 1. 什么是表分区? 表分区,是指根据一定规则,将数据库中的一张表分解成多个更小的,容易管理的部分.从逻辑上看, ...

  2. Mysql --分区表的管理与维护

    改变一个表的分区方案只需使用alter table 加 partition_options 子句就可以了.和创建分区表时的create table语句很像 创建表 CREATE TABLE trb3 ...

  3. 数据切分——Mysql分区表的管理与维护

    关于Mysql分区表的介绍可以参考: http://blog.csdn.net/jhq0113/article/details/44592865 关于Mysql分区表的创建可以参考: http://b ...

  4. 数据切分——Mysql分区表的建立及性能分析

    Mysql的安装方法可以参考: http://blog.csdn.net/jhq0113/article/details/43812895 Mysql分区表的介绍可以参考: http://blog.c ...

  5. MySQL分区表基础

    首先要确定MySQL是否支持分区: Mysql> SHOW VARIABLES LIKE '%partition%'; +-----------------------+-------+| Va ...

  6. (3) MySQL分区表使用方法

    1. 确认MySQL服务器是否支持分区表 命令: show plugins; 2. MySQL分区表的特点 在逻辑上为一个表,在物理上存储在多个文件中 HASH分区(HASH) HASH分区的特点 根 ...

  7. MySQL 分区表原理及数据备份转移实战

    MySQL 分区表原理及数据备份转移实战 1.分区表含义 分区表定义指根据可以设置为任意大小的规则,跨文件系统分配单个表的多个部分.实际上,表的不同部分在不同的位置被存储为单独的表.用户所选择的.实现 ...

  8. MYSQL分区表功能测试简析

    1.查看Mysql版本是否支持分区  SHOW VARIABLES LIKE '%partition%';   +-------------------+-------+ | Variable_nam ...

  9. 详解MySQL分区表

    当数据库数据量涨到一定数量时,性能就成为我们不能不关注的问题,如何优化呢? 常用的方式不外乎那么几种: 1.分表,即把一个很大的表达数据分到几个表中,这样每个表数据都不多. 优点:提高并发量,减小锁的 ...

  10. MySQL分区表使用方法

    原文:MySQL分区表使用方法 1. 确认MySQL服务器是否支持分区表 命令: show plugins; 2. MySQL分区表的特点 在逻辑上为一个表,在物理上存储在多个文件中 HASH分区(H ...

随机推荐

  1. 基于Tengine的反向代理详细配置

    系统环境: SUSE Linux Enterprise Server 10 SP1 (x86_64) 注:所有软件包都放置在/data/software目录下 nginx_tcp_proxy_modu ...

  2. 使用WDS安装Windows8.1

    WDS的部署 安装角色 配置 1. 选择配置服务器 2. 核对是否满足要求 3. 输入远程安装文件夹的路径 4. 选择是否使用自带的DHCP服务器 5. 可以保持默认 6. 完成配置后添加映像文件 7 ...

  3. 非Page类使用session(Httpcontext.session和page.session区别)

    ASP.NET中Session高级使用技巧 在开发Aspx .NET软件时,有时需要把常用的东西封装到一个非PAGE类中,文章介绍在非Page类中使用Session的方法. 一.PAGE参数法: 1. ...

  4. iOS学习——iOS视频和推荐网站

    最近有人问有没有iOS学习的相关资料,就简单的把自己的知道的和资源共享一下: 个人感觉iOS开发人才饱和,培训泛滥,个人推荐后台升职空间大和web前端竞争小. [链接][Ronda收集整理]2014年 ...

  5. 类的构造器[constructor]_C#

    类的构造器(constructor): 1.       先看两个类定义: class A{ } 相当于: class A: object { Public A ( ) : base( ) {   } ...

  6. wampserver安装后 mysql 所有数据库丢失的解决方案

    事情起源: 晚上十点客户紧急来电,说是网站全部瘫痪.同事登陆数据库一看,Mysql Workbench Database下一片空白.当时我们都傻了. 发现原因: 服务器环境是windows serve ...

  7. docker & nodejs & mongodb

    Nodejs 应用简单的访问Mongodb 部署至Docker 1.本地简单的写能运行起来的一个nodejs (demo可写的更简单 一个post一个get即可) schemas  user.js v ...

  8. [easyui] datebox源码阅读. 批注

    jquery.datebox.js 文件. (function($){ /** * create date box */ function createBox(target){ var state = ...

  9. (hdu)5423 Rikka with Tree (dfs)

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5423 Problem Description As we know, Rikka is p ...

  10. [ZZ+CH] Html5 canvas+js 时钟

    总之新Blog入驻以后,又开始老习惯,到处折腾自定义的空间,放些东西. 想起以前大一的时候做过一个Javascript的时间显示器,现在想做一个时钟,当然现在老奸巨猾,会先去看一看有前辈写过没. 前辈 ...