时间:2021-07-01 10:21:17 帮助过:10人阅读
分析:
上面 50100 是 mysql 的特有的注释,就是 mysql 可以执行的意思,表示 mysql 版本在 5.0.1以上才能执行
(1、/*...*/ 是注释,mysql不会执行。
2、mysql对标准sql进行了扩展,包含了一些自己的特性。
3、/*!...*/ 是一种特殊的注释,其他的数据库产品当然不会执行。mysql特殊处理,会选择性的执行。可以认为是:预编译中的条件编译。
4、特别注意 50100,它表示5.01.00 版本或者更高的版本,才执行。)
或者:
- <span style="color: #0000ff;">ALTER</span> <span style="color: #0000ff;">TABLE</span><span style="color: #000000;"> `customer`
- PARTITION </span><span style="color: #0000ff;">BY</span> RANGE (<span style="color: #ff00ff;">YEAR</span>(init_time)) PARTITIONS <span style="color: #800000; font-weight: bold;">3</span><span style="color: #000000;">
- SUBPARTITION </span><span style="color: #0000ff;">BY</span> HASH (<span style="color: #ff00ff;">MONTH</span>((init_time))) SUBPARTITIONS <span style="color: #800000; font-weight: bold;">12</span><span style="color: #000000;"> ( #子分区按月分成12个
- PARTITION `p0` </span><span style="color: #0000ff;">VALUES</span> LESS THAN (<span style="color: #800000; font-weight: bold;">2020</span><span style="color: #000000;">),#19年
- PARTITION `p1` </span><span style="color: #0000ff;">VALUES</span> LESS THAN (<span style="color: #800000; font-weight: bold;">2021</span><span style="color: #000000;">),#20年
- PARTITION `p2` </span><span style="color: #0000ff;">VALUES</span><span style="color: #000000;"> LESS THAN (MAXVALUE)#21年后
- );</span>
修改分区:
- <span style="color: #000000;">#拆分增加分区:将p2拆分成p2和p3
- </span><span style="color: #0000ff;">ALTER</span> <span style="color: #0000ff;">TABLE</span> customer REORGANIZE PARTITION p2 <span style="color: #0000ff;">INTO</span><span style="color: #000000;"> (
- PARTITION p2 </span><span style="color: #0000ff;">VALUES</span> LESS THAN (<span style="color: #800000; font-weight: bold;">2022</span><span style="color: #000000;">),
- PARTITION p3 </span><span style="color: #0000ff;">VALUES</span><span style="color: #000000;"> LESS THAN (MAXVALUE)
- );</span>
报错解决:
- 报错:A <span style="color: #0000ff;">PRIMARY</span> <span style="color: #0000ff;">KEY</span> must include <span style="color: #808080;">all</span> columns <span style="color: #808080;">in</span> the <span style="color: #0000ff;">table</span>’s partitioning <span style="color: #0000ff;">function</span><span style="color: #000000;">
- 意思是说分区的字段必须是要包含在主键当中。
- 所以当我们在使用 日期进行分区的时候,就需要将日期字段包含到主键当中去,
- 查看表分区数据量:
- </span><span style="color: #0000ff;">SELECT</span> PARTITION_NAME,SUBPARTITION_NAME,TABLE_ROWS <span style="color: #0000ff;">FROM</span> INFORMATION_SCHEMA.PARTITIONS <span style="color: #0000ff;">WHERE</span> TABLE_NAME <span style="color: #808080;">=</span> <span style="color: #ff0000;">‘</span><span style="color: #ff0000;">customer</span><span style="color: #ff0000;">‘</span>;
Mysql 分区
标签:MySQL系统 选择 相关性 blob 延伸 表示 范围 列表 sch