|
|
@@ -7,15 +7,15 @@ mode:
|
|
|
# 配置数据源
|
|
|
# https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/yaml-config/data-source/
|
|
|
dataSources:
|
|
|
- # 配置主数据库(master3307可以写自己的名字)
|
|
|
- master3307:
|
|
|
+ # 配置主数据库(master3306可以写自己的名字)
|
|
|
+ master3306:
|
|
|
driverClassName: com.mysql.cj.jdbc.Driver
|
|
|
dataSourceClassName: com.zaxxer.hikari.HikariDataSource
|
|
|
jdbcUrl: jdbc:mysql://localhost:3306/tnb_content_rdb?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
|
|
|
username: dev
|
|
|
password: Dev@123456
|
|
|
# 配置从数据库(salve3308可以写自己的名字)
|
|
|
- slave3308:
|
|
|
+ slave3307:
|
|
|
driverClassName: com.mysql.cj.jdbc.Driver
|
|
|
dataSourceClassName: com.zaxxer.hikari.HikariDataSource
|
|
|
jdbcUrl: jdbc:mysql://localhost:3306/tnb_content_rdb?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
|
|
|
@@ -27,15 +27,15 @@ rules:
|
|
|
- !SINGLE
|
|
|
tables:
|
|
|
- "*.*" # 加载全部单表
|
|
|
- # defaultDataSource: master3307 # 默认数据源,仅在执行 CREATE TABLE 创建单表时有效。缺失值为空,表示随机单播路由。
|
|
|
+ # defaultDataSource: master3306 # 默认数据源,仅在执行 CREATE TABLE 创建单表时有效。缺失值为空,表示随机单播路由。
|
|
|
# 声明使用读写分离规则
|
|
|
# https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/readwrite-splitting/
|
|
|
- !READWRITE_SPLITTING
|
|
|
dataSourceGroups:
|
|
|
readwrite_ds: #读写分离逻辑数据源名称
|
|
|
- writeDataSourceName: master3307 #写库数据源名称
|
|
|
+ writeDataSourceName: master3306 #写库数据源名称
|
|
|
readDataSourceNames: #读库数据源名称
|
|
|
- - slave3308
|
|
|
+ - slave3307
|
|
|
transactionalReadQueryStrategy: PRIMARY # 事务内读请求的路由策略,可选值:PRIMARY(路由至主库)、FIXED(同一事务内路由至固定数据源)、DYNAMIC(同一事务内路由至非固定数据源)。默认值:DYNAMIC
|
|
|
loadBalancerName: round-robin # 负载均衡算法名称
|
|
|
# 负载均衡算法配置
|
|
|
@@ -47,7 +47,7 @@ rules:
|
|
|
- !SHARDING
|
|
|
tables:
|
|
|
user: #逻辑表名
|
|
|
- actualDataNodes: master3307.user_${0..1} #数据源名.表名(此处我的数据库有user_0, user1两张表)
|
|
|
+ actualDataNodes: master3306.user_${0..1} #数据源名.表名(此处我的数据库有user_0, user1两张表)
|
|
|
tableStrategy: #分表策略 databaseStrategy:分库策略
|
|
|
standard: # 用于单分片键的标准分片场景 complex:用于多分片键的复合分片场景
|
|
|
shardingColumn: id # 分片列名称(此处按id分片)
|