日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

數(shù)據(jù)庫分庫分表

 印度阿三17 2020-12-08
  • 垂直分表

將字段拆分出多個表

  • 水平分表

將數(shù)據(jù)拆分多個表

<!--   分庫分表插件     -->
<dependency>
    <groupId>org.apache.shardingsphere</groupId>
    <artifactId>sharding-jdbc-spring-boot-starter</artifactId>
</dependency>

在執(zhí)行sql時,按照配置的策略,動態(tài)改變表名查找對應的數(shù)據(jù)庫表進行操作

?

# 多個數(shù)據(jù)庫水平分表配置

# 數(shù)據(jù)源名稱,多數(shù)據(jù)源以逗號分隔
spring.shardingsphere.datasource.names=datasource1,datasource2

# 數(shù)據(jù)源 datasource1
spring.shardingsphere.datasource.datasource1.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.datasource1.driver-class-name=com.mysql.cj.jdbc.Driver
spring.shardingsphere.datasource.datasource1.url=jdbc:mysql://localhost:3306/spring?characterEncoding=utf8&useSSL=false&serverTimezone=GMT+8&rewriteBatchedStatements=true
spring.shardingsphere.datasource.datasource1.username=root
spring.shardingsphere.datasource.datasource1.password=root

# 數(shù)據(jù)源 datasource2
spring.shardingsphere.datasource.datasource2.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.datasource2.driver-class-name=com.mysql.cj.jdbc.Driver
spring.shardingsphere.datasource.datasource2.url=jdbc:mysql://localhost:3306/spring1?characterEncoding=utf8&useSSL=false&serverTimezone=GMT+8&rewriteBatchedStatements=true
spring.shardingsphere.datasource.datasource2.username=root
spring.shardingsphere.datasource.datasource2.password=root

# 允許一個實體類對應多張表
spring.main.allow-bean-definition-overriding=true

# 標準分片表配置
# 指定course表分布情況( 配置表在 哪個數(shù)據(jù)庫 的 哪些表里 ),一共有兩個數(shù)據(jù)源datasource1,datasource2,每個庫中有3張表course_1,course_2,course_2
spring.shardingsphere.rules.sharding.tables.course.actual-data-nodes=datasource$->{1..2}.course_$->{1..3}

# 分布式序列策略配置 指定course表里的主鍵cid生成策略為snowflake
spring.shardingsphere.rules.sharding.tables.course.key-generate-strategy.column=cid # 分布式序列列名稱
spring.shardingsphere.rules.sharding.tables.course.key-generate-strategy.key-generator-name=SNOWFLAKE # 分布式序列算法名稱

# 指定分片策略-表  約定 cid%3 取模的值對應存放的表序號
spring.shardingsphere.sharding.tables.course.table-strategy.inline.sharding-column=cid
spring.shardingsphere.sharding.tables.course.table-strategy.inline.algorithm-expression=course_$->{cid % 3   1}

# 指定分片策略-數(shù)據(jù)庫  約定 (user_id%2  1) 對應存放的數(shù)據(jù)源序號
spring.shardingsphere.sharding.tables.course.database-strategy.inline.sharding-column=user_id
spring.shardingsphere.sharding.tables.course.database-strategy.inline.algorithm-expression=datasource$->{user_id % 2   1}

# 打開sql輸出日志
spring.shardingsphere.props.sql.show=true
來源:https://www./content-2-779451.html

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多