Sharding-JDBC
文章平均质量分 81
每天都要进步一点点
工作日常技术学习、积累、总结
展开
-
四、Sharding-JDBC系列04:分库分表后,如何不停机迁移数据?
如果读出来的数据在新库里没有,或者这条数据的update_time最后修改的时间,比新库的数据新才会写。导完一轮之后,有可能数据还是存在不一致,那么就程序自动做一轮校验,对比新老库每个表的每条数据,如果有不一样的,就针对那些不一样的,从老库读数据再次写。迁移完了之后,修改系统的数据库连接配置啥的,包括可能代码和SQL也许有修改,那你就用最新的代码,然后直接启动连到新的分库分表上去。简单来说,就是在线上系统里面,之前所有对数据库增删改的操作,除了对老库增删改,都加上对新库的增删改,这就是所谓的双写。原创 2024-01-16 11:24:00 · 634 阅读 · 0 评论 -
二、Sharding-JDBC系列02:自定义主键生成策略
实际应用中,大部分场景按照MySQL主键ID自增就能满足需求,但是在分库分表后,MySQL的自增主键就不能使用了,为了避免重复,我们需要全局唯一的ID,比如会员表的会员ID、订单表的订单ID等。// UUID: 采用UUID.randomUUID()的方式产生分布式主键// SNOWFLAKE: 雪花算法,生成64bit的长整型数据还抽离出分布式主键生成器的接口,方便用户自行实现自定义的自增主键生成器。原创 2024-01-12 14:55:53 · 1571 阅读 · 0 评论 -
一、Sharding-JDBC系列01:整合SpringBoot实现分库分表,读写分离
Sharding-JDBC定位为轻量级Java框架,在Java的JDBC层提供的额外服务。它使用客户端直连数据库,以jar包形式提供服务,无需额外部署和依赖,可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM框架。原创 2024-01-11 17:45:43 · 1084 阅读 · 0 评论