mysql5.7 分区表_mysql分区表学习

mysql5.7 分区表_mysql分区表学习一:怎样对已有数据的表进行表分区可以直接altertable进行修改。如:USEdba;ALTERTABLEt3PARTITIONBYRANGE(id)(PARTITIONp1VALUESLESSTHAN(5),PARTITIONp2VALUESLESSTHAN(10),PARTITIONp3VALUESLESSTHANmaxvalue);二:分区表的限制2…

大家好,又见面了,我是你们的朋友全栈君。

一:怎样对已有数据的表进行表分区

可以直接alter table进行修改。

如:

USE dba;

ALTER TABLE t3 PARTITION BY RANGE(id)

(

PARTITION p1 VALUES LESS THAN(5),

PARTITION p2 VALUES LESS THAN (10),

PARTITIONp3 VALUES LESS THAN maxvalue

);

二:分区表的限制

2.1 不支持外键

当表中一个字段建了外键,引用另一个表字段时,在该表上无法创建分区表。会报错.

Mysql 5.5:

Error Code: 1217

Cannot delete or update a parent row: aforeign key constraint fails

Mysql 5.7:

ERROR 1506 (HY000): Foreign keys are notyet supported in conjunction with partitioning

2.2 分区键必须是INT类型,或者通过表达式返回INT类型

分区键必须是INT类型,或者通过表达式返回INT类型,可以为NULL。唯一的例外是当分区类型为KEY分区的时候,可以使用其他类型的列作为分区键(BLOB or TEXT列除外)

2.3如果表中有主键和唯一索引,按主键字段进行分区时,唯一索引列应该包含分区键。

例如:t4表有个主键和唯一索引。

0818b9ca8b590ca3270a3433284dd417.png

变成分区表时会报错:

ALTER TABLE t4PARTITION BY RANGE(id)

(

PARTITION p1VALUES LESS THAN(2),

PARTITION p2VALUES LESS THAN maxvalue

)

Error Code: 1503

A UNIQUE INDEX must include all columns in the table’spartitioning function

唯一索引应该这样创建:

CREATE UNIQUEINDEX ind_age ON t4(id,age) ;

再按主键分区,就不会报错了。

2.4 目前mysql不支持空间类型和临时表类型进行分区。不支持全文索引

对临时表分区时,会报错:

Error Code: 1562

Cannot create temporary table withpartitions

CREATE TABLE t10(

id INT,

title VARCHAR(30),

FULLTEXT (title)

) ENGINE=MYISAM

PARTITION BY RANGE(id)

(

PARTITION p1 VALUES LESS THAN(9),

PARTITION p2 VALUES LESS THAN maxvalue

);

报错:

Error Code: 1214

The used table type doesn’t supportFULLTEXT indexes

对有空间类型列的表分区时,报错:

Error Code: 1178

The storage engine for the table doesn’tsupport GEOMETRY

2.5 对象限制

下面这些对象在不能出现在分区表达式

Stored functions, stored procedures, UDFs, orplugins.

Declared variables or user variables.

2.6 运算限制

支持加减乘等运算出现在分区表达式,但是运算后的结果必须是一个INT或者NULL。

支持DIV,不支持/

|, &, ^, <>, and ~ 不允许出现在分区表达式中

2.7 sql_mode限制

官方强烈建议你在创建分区表后,永远别改变mysql的sql_mode。因为在不同的模式下,某些函数或者运算返回的结果可能会不一样。

2.8 不支持query_cache

2.9 分区键不能是一个子查询

即使子查询返回的是int值或者null.

2.10 子分区

只有RANG和LIST分区能进行子分区。HASH和KEY分区不能进行子分区。

子分区必须是HASHorKEY类型。

2.11 分区表不支持INSERTDELAYED

SQL代码

mysql> insert DELAYED into user_msg_pvalues(18156629,0,0,0,0,0,0,0,0,0);

ERROR 1616 (HY000): DELAYED option not supportedfor table ‘user_msg_p’

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143812.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • springmvc实现拦截器两种方式_追逐拦截他人的定义

    springmvc实现拦截器两种方式_追逐拦截他人的定义SpringMVC拦截器1、什么是拦截器  在系统中,经常需要在处理用户请求之前和之后执行一些行为,例如检测用户的权限,或者将请求的信息记录到日志中,即平时所说的“权限检测”及“日志记录”。当然不仅仅这些,所以需要一种机制,拦截用户的请求,在请求的前后添加处理逻辑。  SpringMVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(InterceptorChain)。在访问被拦截的方法或字段时

    2025年8月11日
    2
  • pip安装教程

    直接搜索pippip官网地址会得到下面的图像下载短的那个(如果你不知道pip是否安装可以通过命令pip–version来判断是否已安装)下载完成后解压到你自己知道的文件夹防止找不到,,然后有两种方法安装pip第一种在python环境下安装pippy-mensurepip–upgrade(直接在python里面运行cmd输入这一行代码)第二种可以用python中的内置脚本python内置脚本pyget-pip.py(下载到python文件中打开cmd,然后..

    2022年4月9日
    60
  • f1 score计算_F1值

    f1 score计算_F1值F1分数(F1Score),是统计学中用来衡量二分类模型精确度的一种指标。它同时兼顾了分类模型的精确率和召回率。F1分数可以看作是模型精确率和召回率的一种加权平均,它的最大值是1,最小值是0。1.TP、TN、FP、FN解释说明真实情况 预测结果 正例 反例 正例 TP(真正例) FN(假反例) 反例 FP(假正例) TN(真反例) 行表示预测的label值,列表示真实label值 TP:TruePositive,被判定为正样本,事实上也是

    2022年8月31日
    3
  • django的render函数_django render

    django的render函数_django renderreverse函数reverse函数的作用是用来进行URL反转的,接下来我们介绍reverse函数的几种用法之前我们都是通过url来访问视图函数。有时候我们知道这个视图函数,但是想反转回他的url

    2022年7月31日
    6
  • 二阶有源滤波器设计

    二阶有源滤波器设计1引入为什么要用有源二阶滤波器?(1)从有源来说对于无源二阶低通滤波器:其幅頻方程为:我们从中可以看出其通带截止频率为有其品质因子为0.372。我们根据上图得到二阶无源低通滤波器的品质因子只有0.372,如果希望Q大于0.5,就需要在ω=ωo附近增大幅度响应。实现这个目的的一种方法就是增加一个可控的正反馈控制量,这种反馈仅仅在ω=ωo附近奏效,参见下…

    2022年5月4日
    56
  • 巧用cssText[通俗易懂]

    巧用cssText[通俗易懂]IE6/7/8下cssText值与IE9/Firefox/Safari/Chrome/Opera不同1,IE6/7/8下cssText下返回值结尾没有分号,且属性名四十大写TESTvardiv=document.getElementsByTagName(‘div’);alert(div[0].style.cssText);IE6/7/8下 IE9/F

    2022年7月26日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号