ShardingSphere数据源变动导致查询表数据时数据一直在改变


一、场景

1、项目使用ShardingSphere操作数据库

2、配置的数据源为manager1、manager2

3、有配置分库策略

4、查询表"t_mb_black"的数据时,有时查询的是manager1数据源的数据、有时查询的是manager2源的数据


二、原因

"t_mb_black"表没有配置到shardingsphere分库策略的表集合里边(该表没有配置分库策略)


三、解决

将"t_mb_black"表配置到shardingsphere的分库策略的表集合里边

注:本项目是以代码的形式配置的分库、分表策略,以下配置无法直接复制使用

##数据源类型,这里使用阿里的Druid
sharding.jdbc.datasource.type=com.alibaba.druid.pool.DruidDataSource
##数据库连接驱动
sharding.jdbc.datasource.driver=com.mysql.jdbc.Driver
##是否开启sharding-jdbc sql日志
sharding.jdbc.show.sql=true

#########-------MANAGE数据库类型配置-----#########
##db数据库类型 数据源名称
sharding.jdbc.datasource.manage.names=manage0,manage1
##db数据库类型的默认分库策略 数据库字段
sharding.jdbc.datasource.manage.defaultDatabaseStrategy.shardingColumn=vdnId
##db数据库类型的默认分库策略 数据库字段类型,支持 INTEGER 整型(使用取模的方式分库) DATETIME 时间类型(使用年月的方式分库)
sharding.jdbc.datasource.manage.defaultDatabaseStrategy.shardingColumnType=INTEGER
##db数据库类型使用默认分库策略的表集合
//将t_mb_black表添加到分库表记录中
sharding.jdbc.datasource.manage.defaultDatabaseStrategy.vdnId.shardingTables=t_mb_black,t_mb_xxx

注:遇到以上问题,如果是以配置文件的形式进行shardingsphere管理,可自行百度如何为表配置分库、分表策略,解决方法是一样的,为表配置分库策略即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值