下载此文档

MYSQL分区表测试.docx


文档分类:IT计算机 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
MYSQL分区表测试
MYSQL分区表测试
MYSQL分区表测试
MYSQL 分区表测试
MYSQL 分区表测试
一、 mysql 分区简介
数据库分区
数据库分区是一种物理数据库设计技术。虽然分区技术可以
实现很多效果, 但其主要目的是为了在特定的 SQL 操作中减少数据读写的总量以缩减 sql 语句的响应时间,同时对于应用来说分区完全是透明的。
MYSQL 的分区主要有两种形式:水平分区和垂直分区
水平分区( Horizontal Partitioning )
这种形式的分区是对根据表的行进行分区,通过这样的方式不同分组里面的物理列分割的数据集得以组合,从而进行个
体分割(单分区)或集体分割( 1 个或多个分区) 。所有在表中定义的列在每个数据集中都能找到,所以表的特性依然得以保持。水平分区一定要通过某个属性列来分割。常见的比如年份,日期等。
垂直分区( Vertical Partitioning )
这种分区方式一般来说是通过对表的垂直划分来减少目标表的宽度,使某些特定的列被划分到特定的分区,每个分区
都包含了其中的列所对应所有行。
可以用 show variables like '%partition%';
命令查询当前的 mysql 数据库版本是否支持分区。
分区的作用:数据库性能的提升和简化数据管理
在扫描操作中, mysql 优化器只扫描保护数据的那个分区以
减少扫描范围获得性能的提高。
分区技术使得数据管理变得简单,删除某个分区不会对另外
的分区造成影响,分区有系统直接管理不用手工干预。
mysql 从 版本开始支持分区。 每个分区的名称是不区分大
小写。同个表中的分区表名称要唯一。
二、 mysql 分区类型
根据所使用的不同分区规则可以分成几大分区类型。
RANGE 分区:
基于属于一个给定连续区间的列值,把多行分配给分区。
LIST 分区:
类似于按 RANGE 分区,区别在于 LIST 分区是基于列值匹
配一个离散值集合中的某个值来进行选择。
HASH 分区:
基于用户定义的表达式的返回值来进行选择的分区,该表达
式使用将要插入到表中的这些行的列值进行计算。这个函数
可以包含 MySQL 中有效的、产生非负整数值的任何表达式。
KEY
MYSQL分区表测试
MYSQL分区表测试
MYSQL分区表测试
分区:类似于按 HASH 分区,区别在于 KEY 分区只支持计
算一列或多列,且 MySQL 服务器提供其自身的哈希函数。
必须有一列或多列包含整数值。
复合分区:
基于 RANGE/LIST 类型的分区表中每个分区的再次分割。
子分区可以是 HASH/KEY 等类型。
三、 mysql 分区表常用操作示例
以部门员工表为例子:
创建 range 分区
create table emp
(empno varchar(20) not null ,
empname varchar(20),
deptno int,
birthdate date,
salary int
)
partition by range(salary)
(
partition p1 values less than (1000),
partition p2 values less than (2000),
MYSQL分区表测试
MYSQL分区表测试
MYSQL分区表测试
partition p3 values less than maxvalue
);
以员工工资为依据做范围分区。
create table emp
(empno varchar(20) not null ,
empname varchar(20),
deptno int,
birthdate date not null,
salary int

MYSQL分区表测试 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人大于振
  • 文件大小27 KB
  • 时间2021-12-05
最近更新