shardingsphere 新手入门学习

涉及到shardingsphere不懂的可以私聊博主,集成,改造,动态数据源,动态分片规则,shardingsphere大数据量优化

1.pom文件

shardingsphere选择5.2.0版本

        <dependency>
            <groupId>org.apache.shardingsphere</groupId>
            <artifactId>shardingsphere-jdbc-core-spring-boot-starter</artifactId>
            <version>5.2.0</version>
        </dependency>

除开shardingsphere本身的依赖,需要使用dynamic多数据源辅助shardings的使用

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
            <version>3.3.2</version>
        </dependency>

2.启动项配置 

在将两种依赖引入到项目中后,开始对shardingsphere进行配置

2.1 shardingsphere数据源配置

spring:
  shardingsphere:
    datasource:
      #分库,根据需求去写,需要哪些,我这边定义master,write,read三种
      names: master,read
      master:
        type: com.alibaba.druid.pool.DruidDataSource #连接池管理工具
        driver-class-name: com.mysql.cj.jdbc.Driver #数据库驱动
        #数据库url
        url: jdbc:mysql://127.0.0.1:3306/shardingdatabase?characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&autoReconnect=true&serverTimezone=Asia/Shanghai
        username: root #用户
        password: 123456 #密码
      read:
        type: com.alibaba.druid.pool.DruidDataSource #连接池管理工具
        driver-class-name: com.mysql.cj.jdbc.Driver #数据库驱动
        #数据库url
        url: jdbc:mysql://127.0.0.1:3306/shardingdatabase?characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&autoReconnect=true&serverTimezone=Asia/Shanghai
        username: root #用户
        password: 123456 #密码

 上面的代码部分是属于shardingsphere的数据源配置

spring.shardingsphere.datasource.names=master,read,master和read是属于数据源名称,因为是多数据源,所以数据源需要进行自定义名称,不能在和spring.datasource一样直接定义,在这两个数据源中,默认数据源是master,在底层代码中也是master,如果在之后进行mybatis,jdbc,jpa等数据库操作时没有进行数据源切换,使用的数据源默认是master

注意:如果spring.shardingsphere.datasource.names=master,read,但是在底下的数据源配置中,少了read的数据源配置,在启动时会报数据源缺失的错,如果多了一个数据源,则不会影响正常启动,但是多出来的数据源并不会注册到多数据源管理下

在写数据源时,可以使用和spring.datasource一样的写法,如spring.datasource.druid,或者切换数据源管理池,都可以实现

2.2 dynamic数据源配置

在配置shardingsphere数据源后,dynamic可以通过java代码进行配置,也可以通过配置文件重新配置一遍,但是我这里用的是java代码

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值