最近搞了ShardingSphere,这里做一下记录。
官网:http://shardingsphere.apache.org/index_zh.html
先确定一下版本
<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>sharding-jdbc-spring-boot-starter</artifactId>
<version>4.1.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.24</version>
</dependency>
不过这里吐槽,ShardingSphere的源码会出现不一致的情况,然后断点查问题真是不舒服。
然后给一下配置文件内容
# 配置真实数据源
spring.shardingsphere.datasource.names=ds0,ds1
# 配置第 1 个数据源
spring.shardingsphere.datasource.ds0.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.ds0.driver-class-name=com.mysql.jdbc.Driver
spring.shardingsphere.datasource.ds0.url=jdbc:mysql://localhost:3306/bookstore
spring.shardingsphere.datasource.ds0.username=root
spring.shardingsphere.datasource.ds0.password=root123
# 配置第 2 个数据源
spring.shardingsphere.datasource.ds1.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.ds1.driver-class-name=com.mysql.jdbc.Driver
spring.shardingsphere.datasource.ds1.url=jdbc:mysql://localhost:3306/bookstore_slave
spring.shardingsphere.datasource.ds1.username=root

本文记录了使用ShardingSphere进行分库分表的实践过程,包括配置两个数据源、启用SQL显示、定义分库与分表策略以及ID生成策略。分库策略基于book_type字段,取值0或1,对应ds0和ds1数据源。分表策略依据system_user字段,取值0-3,在ds0数据库中创建4张book_user表。详细配置代码和更多信息可在GitHub找到。
最低0.47元/天 解锁文章
3053

被折叠的 条评论
为什么被折叠?



