开发者社区> 问答> 正文

mysql表分区问题:报错

有2个这方面的问题
1. 如果表中有数据了,还可以对这张表进行分区嘛,如果可以,函数应该怎么写
2.我想对一张表的主键uid进行分区,不过分区的标准是按照uid最后一位数的大小 分成 0-9 这几个区,这种分区可以做到嘛,应该怎么写函数。。。  求大神

展开
收起
kun坤 2020-06-09 13:40:42 759 0
1 条回答
写回答
取消 提交回答
  • 试试利用merge存储引擎来实现分表###### 1.应该不可以,以前找过类似解决办法没实现
    2.

    PARTITION BY RANGE (RIGHT(uid,1))
    ######昨天解决问题了,可以分区,alter table XXX partition by hash(uid) partitions 10; 2个问题都解决了 谢谢你们###### 1、有数据了 也可以进行分区的.(之前刚分过) 2、应该是可以的...主要是函数的写法 ######alter table XXX partition by hash(uid) partitions 10; 可以解决这2个问题,已找到解决办法,供参考###### 在数据库层的话那就不好办了. 可以试着吧分区计算移到逻辑层来: 那这些都不是问题了.
    1. 对于已经有数据的表, 记下主键Id值=x, 查询的时候当Id<=x就查询不动, Id >x 就使用分区定位.
    2. uid % 10 即可取到数据表或者数据服务器索引.  ######alter table XXX partition by hash(uid) partitions 10; 供参考######跨分区查询的话准备死翘翘吧
    2020-06-09 13:40:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像