确认mysql服务器是否支持分区表: show plugins;

如果能看到partition则表示能分区。

HASH分区的特点:

  根据MOD(分区键,分区数)的值把数据行存储到表的不同分区中

  数据可以平均的分布在各个分区中

  HASH分区的键值必须是一个INT类型的值,或是通过函数可以转为INT类型

建立表时,下方添加:

  PARTITON BY HASH(ID)

  PARTIONS 4;

  PARTITON BY HASH(UNIX_TIMESTAMP(time))  # 转化为整型

  PARTIONS 4;  # 4个分区

RANGE分区特点:

  根据分区键值的范围把数据行存储到表的不同分区中

  多个分区的范围要连续,但是不能重叠

  默认情况下,使用VALUES LESS THAN属性,即每个分区不包括指定的那个值,如1-100,不包括100

建表时,下方添加:

  PARTITON BY RANGE (id)(

    PARTION p0 VALUES LESS THAN (10000),

    PARTION p1 VALUES LESS THAN (20000),

    PARTION p2 VALUES LESS THAN (30000),

    PARTION p3 VALUES LESS THAN MAXVALUE

  )

查询建立的分区:

  SELECT table_name,partition_name,partition_description,table_rows FROM information_schema.'PARTITIONS' WHERE table_name='表名';

增加分区:

  ALTER TABLE 表名 ADD PARTITON (PARTITION p4 VALUES LESS THAN(2018);

删除分区:

  ALTER TABLE 表名 DROP PARTITION p4;

数据归档迁移:需结构相同,归档到的表一定是非分区表,非临时表,没有外键约束,归档引擎archive

  ALTER TABLE 表名 exchange PARTITON p1 WITH TABLE 归档到的表;

  ALTER TABLE 归档到的表 ENGINE=ARCHIVE;  # 归档引擎的表只能进行查询操作不能写

RANGE分区使用场景:

  分区键为日期或是时间类型

  所有查询中都包括分区键

  定期按分区范围清理历史数据

LIST分区的特点:

  按分区键取值的列表进行分区

  同范围分区一样,各分区的列表值不能重复

  每一行数据必须能找到对应的分区列表,否则数据插入失败

建表时,下方添加:

  PARTITON BY LIST (id)(  # id 为13579,存到p0,2468存到p1

    PARTION p0 VALUES in (1,3,5,7,9),

    PARTION p1 VALUES in (2,4,6,8)

  )

使用分区表注意事项:

  结合业务场景选择分区键,避免夸分区查询;

  对分区表进行查询最好在WHERE从句中包含分区键;

  具有主键或唯一索引的表,主键或唯一索引必须是分区键的一部分

msql分区的更多相关文章

  1. TDSQL“相似查询工具MSQL+”入选VLDB论文

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云数据库 TencentDB发表于云+社区专栏 作者介绍:王晓宇,腾讯数据库TDSQL团队成员,目前参与TDSQL数据库内核研发工 ...

  2. SQL Server表分区

    什么是表分区 一般情况下,我们建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在 ...

  3. win7安装时,避免产生100m系统保留分区的办法

    在通过光盘或者U盘安装Win7操作系统时,在对新硬盘进行分区时,会自动产生100m的系统保留分区.对于有洁癖的人来说,这个不可见又删不掉的分区是个苦恼.下面介绍通过diskpart消灭保留分区的办法: ...

  4. Partition:增加分区

    在关系型 DB中,分区表经常使用DateKey(int 数据类型)作为Partition Column,每个月的数据填充到同一个Partition中,由于在Fore-End呈现的报表大多数是基于Mon ...

  5. Partition2:对表分区

    在SQL Server中,普通表可以转化为分区表,而分区表不能转化为普通表,普通表转化成分区表的过程是不可逆的,将普通表转化为分区表的方法是: 在分区架构(Partition Scheme)上创建聚集 ...

  6. Partition:分区切换(Switch)

    在SQL Server中,对超级大表做数据归档,使用select和delete命令是十分耗费CPU时间和Disk空间的,SQL Server必须记录相应数量的事务日志,而使用switch操作归档分区表 ...

  7. WebGIS项目中利用mysql控制点库进行千万条数据坐标转换时的分表分区优化方案

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 项目中有1000万条历史案卷,为某地方坐标系数据,我们的真实 ...

  8. VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容

    VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容 一般来说,在对虚拟机里的Ubuntu下的磁盘进行扩容时,都是添加新的分区,而并不是对其系统所在分区进行扩容,如在此链接中http ...

  9. SQL Server 批量主分区备份(Multiple Jobs)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 案例分析(Case) 方案一(Solution One) 方案二(Solution Two) ...

随机推荐

  1. ASP.NET Core Identity Hands On(2)——注册、登录、Claim

    上一篇文章(ASP.NET Core Identity Hands On(1)--Identity 初次体验)中,我们初识了Identity,并且详细分析了AspNetUsers用户存储表,这篇我们将 ...

  2. C++ 文件流的方式操作文件(一个简单的写入,读取)

    新手学习c++哈,归纳的写了一下以 C++ 的方式写入读取文件,读文件到控制台,并加了行号.博客记录主要为了备忘.当然 ^_^ 喜欢同学的话可以拿走代码直接用.转帖注明出处哈.欢迎讨论,我一直认为:知 ...

  3. Volley手写属于自己的万能网络访问框架

    用户在调用层(Activity或Service中),发起一个网络请求,该请求肯定包含url,请求参数(requestParameter),以及我们需要给调用层提供一个请求成功或失败以后回调监听的接口d ...

  4. 面试阿里前端P6血和泪换来的收获

      我的一个朋友在前端耕耘一段时间,也在网上进行了高度培训学习,最近一段时间他打算跳槽去阿里面试前端P6开发岗位,结果被痛虐了一回,估计从此以后会给他留下不可磨灭的阴影啊 真是十年生死两茫茫,一鲁代码 ...

  5. Java IO--字符流--InputStreamReader 和 OutputStreamWriter

    今天继续学习字符流的子类!!!! 先来熟悉一下适配器设计模式:(手写的,,嘿嘿) 因为据说InputStreamReader 和OutputStreamWriter采用了适配器模式(现在我还没能理解, ...

  6. WeTest----如何查看Wetest生成测试报告?

    在前一篇文章中主要介绍了手机中如何开始进行WeTest测试,此篇文章将总结测试报告的查看,这里很简单啦,一切的测试结果wetest都将自动生成,值得注意的是,新注册的用户默认每项测试次数为5,所以请珍 ...

  7. 将wiki人脸数据集的性别信息提取出来制作标签

    import scipy.io as scio dataFile = 'D:\\Users\\a\\Documents\\Tencent Files\\178026882\\FileRecv\\wik ...

  8. HWPushDemo【华为推送集成,基于2.6.1.301版本】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个Demo只是记录华为推送的集成,不能运行. 另外,因为可能用到存储权限,所以还需要搭配运行时权限申请功能. 使用步骤 一.项目组 ...

  9. Kubernetes集群部署史上最详细(一)Kubernetes集群安装

    适用部署结构以及版本 本系列中涉及的部署方式和脚本适用于1.13.x和1.14,而且采取的是二进制程序部署方式. 脚本支持的部署模式 最小部署模式 3台主机,1台为k8s的master角色,其余2台为 ...

  10. vue全家桶安装以及修改webpack配置新增vue项目启动方式

    一.安装node环境(自带npm) 下载地址 二.替换下载源 // 淘宝 NPM 镜像 npm install -g cnpm --registry=https://registry.npm.taob ...