蔡香满屋
站在牛顿头上吃苹果

1.下面我们需要了解下数据库集群时会产生哪些问题?

答:1.自增id的问题    2.数据关联查询问题(水平切分)    3.数据同步问题

2.对于数据库集群的问题,如果自动增长id产生重复的话,如果解决这个问题?

方式有:

a.使用UUID形式,不过这种方式在Oracle数据库比较推荐,mysql使用不是很多。

b.设置数据库的步长,即修改自增的步长:set @@auto increment increment = 10;

修改起始值:set @@auto increment_offset = 5

假设有两台mysql数据库服务器,节点1的起始值1,自增步长为2,那么产生的数据就是 1 3 5 7 9...等等奇数

节点2的起始值2,自增步长为2,那么产生的数据就是2 4 6 8...等等偶数。

c.还有方法就是使用雪花算法或者redis(单线程,不过如果多个线程同时生成ID时可能发生线程阻塞问题)

posted on 2020-04-06 18:20  蔡香满屋  阅读(430)  评论(0)    收藏  举报