微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【Mycat】主键id自增长配置

在实现分库分表的情况下,数据库自增主键已无法保证自增主键的全局唯一。为此,MyCat 提供了全局sequence,并且提供了包含本地配置和数据库配置等多种实现方式,实现方式主要有三种:本地文件方式数据库方式本地时间戳算法。
本文主要介绍的是数据库的方式

1.看下配置文件如下:

  1. rule="sharding-by-intfile" />

配置Server.xml
    mysql> insert into employee(id,name,sharding_id) values (91,'123',10010);
    Query OK, 1 row affected (0.12 sec)
      MysqL> select * from employee;
      +----+------+-------------+
      | id | name | sharding_id |
      +----+------+-------------+
      | 91 | 123  |       10000 |
      | 92 | 123  |       10000 |
      | 93 | 123  |       10010 |
      | 94 | 123  |       10010 |
      | 91 | 123  |       10010 |
      +----+------+-------------+
      4 rows in set (0.01 sec)





总结如下:
最开始的id=current_value+increment,继续插入时如果id一直<第二次的current_value+increment,current_value不会变,直到自增id 超过,然后current_value变为current_value+increment,以此类推

参考:
http://www.cnblogs.com/raphael5200/p/5900007.html
https://github.com/yujiahui/Mycat-doc/blob/master/MyCAT自增字段和返回生成的主键ID的经验分享 
<table name="employee" primarykey="ID" datanode="dn1,dn2"

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

相关推荐