shardingjdbc + jpa 完成讀寫分離配置及資料分片
1、環境介紹
虛擬機器中新建6臺伺服器,分別配置成兩個一主兩從模式的資料庫叢集,主從同步上一篇詳解。
注意:建立克隆需要修改靜態IP地址、mysql 的server-id、以及server-uuid引數,每臺伺服器必須不同。
2、資料庫建表
3、資料庫對映的實體類
4、讀寫分離配置
# 配置6個資料來源 spring.shardingsphere.datasource.names=master0,slave0,slave1,master1,slave2,slave3 spring.shardingsphere.datasource.master0.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.master0.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.master0.jdbc-url=jdbc:mysql://192.168.92.132:3306/task spring.shardingsphere.datasource.master0.username=root spring.shardingsphere.datasource.master0.password=root spring.shardingsphere.datasource.slave0.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.slave0.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.slave0.jdbc-url=jdbc:mysql://192.168.92.133:3306/task spring.shardingsphere.datasource.slave0.username=root spring.shardingsphere.datasource.slave0.password=root spring.shardingsphere.datasource.slave1.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.slave1.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.slave1.jdbc-url=jdbc:mysql://192.168.92.134:3306/task spring.shardingsphere.datasource.slave1.username=root spring.shardingsphere.datasource.slave1.password=root spring.shardingsphere.datasource.master1.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.master1.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.master1.jdbc-url=jdbc:mysql://192.168.92.135:3306/task spring.shardingsphere.datasource.master1.username=root spring.shardingsphere.datasource.master1.password=root spring.shardingsphere.datasource.slave2.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.slave2.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.slave2.jdbc-url=jdbc:mysql://192.168.92.136:3306/task spring.shardingsphere.datasource.slave2.username=root spring.shardingsphere.datasource.slave2.password=root spring.shardingsphere.datasource.slave3.type=com.zaxxer.hikari.HikariDataSource spring.shardingsphere.datasource.slave3.driver-class-name=com.mysql.jdbc.Driver spring.shardingsphere.datasource.slave3.jdbc-url=jdbc:mysql://192.168.92.137:3306/task spring.shardingsphere.datasource.slave3.username=root spring.shardingsphere.datasource.slave3.password=root # 讀寫分離配置 spring.shardingsphere.sharding.master-slave-rules.master0.master-data-source-name=master0 spring.shardingsphere.sharding.master-slave-rules.master0.slave-data-source-names=slave0,slave1 spring.shardingsphere.sharding.master-slave-rules.master1.master-data-source-name=master1 spring.shardingsphere.sharding.master-slave-rules.master1.slave-data-source-names=slave2,slave3 # 讀資料時的策略(輪詢) spring.shardingsphere.masterslave.load-balance-algorithm-type=round_robin # 配置id生成策略 spring.shardingsphere.sharding.tables.c_order.key-generator.column=id spring.shardingsphere.sharding.tables.c_order.key-generator.type=SNOWFLAKE # 資料庫表分片配置 (根據user_id欄位分庫) spring.shardingsphere.sharding.tables.c_order.database-strategy.inline.sharding-column=user_id spring.shardingsphere.sharding.tables.c_order.database-strategy.inline.algorithm-expression=master$->{user_id % 2}
5、測試資料庫分片及讀寫分離情況
相關文章
- MySQL-SpringBoot整合JPA實現資料讀寫分離MySqlSpring Boot
- 資料庫讀寫分離資料庫
- 資料讀寫壓力大,讀寫分離
- 資料庫的讀寫分離資料庫
- Amoeba for MySQL讀寫分離配置MySql
- mysql proxy 安裝及配置實現讀寫分離MySql
- 大資料資料庫讀寫分離分庫分表大資料資料庫
- 讀寫分離的的資料同步?
- 在 Istio 中實現 Redis 叢集的資料分片、讀寫分離和流量映象Redis
- Mycat讀寫分離配置實踐
- SQL Server AlwaysOn讀寫分離配置SQLServer
- shardingjdbc分表分庫,主從分離JDBC
- 資料庫讀寫分離Master-Slave資料庫AST
- ssm讀寫分離多資料來源SSM
- MySQL 中讀寫分離資料延遲MySql
- Discuz!NT資料庫讀寫分離方案資料庫
- 配置\清除 MySQL 主從 讀寫分離MySql
- [PHP]Larval主從讀寫分離配置PHP
- MySQL 讀寫分離介紹及搭建MySql
- Spring Boot + Mybatis 多資料來源配置實現讀寫分離Spring BootMyBatis
- 資料庫治理利器:動態讀寫分離資料庫
- RDS讀寫分離,海量資料一鍵搞定
- Spring實現資料庫讀寫分離Spring資料庫
- golang saas框架,資料庫級別隔離、讀寫分離Golang框架資料庫
- 使用ShardingSphere-JDBC完成Mysql的分庫分表和讀寫分離JDBCMySql
- JDBC 大資料集分頁 ,大資料讀寫及事務的隔離級別JDBC大資料
- Spring Aop實現資料庫讀寫分離Spring資料庫
- MyCat 讀寫分離 資料庫分庫分表 中介軟體 安裝部署,及簡單使用資料庫
- ProxySQL簡介原理及讀寫分離應用SQL
- Redis的讀寫分離Redis
- Laravel讀寫分離原理Laravel
- MySQL Amoeba讀寫分離MySql
- Amoeba for mysql讀寫分離MySql
- MySQL讀寫分離AtlasMySql
- mongodb的讀寫分離MongoDB
- 資料庫的讀寫分離與負載均衡策略資料庫負載
- 資料庫讀寫分離,主從同步實現方法資料庫主從同步
- 【資料庫訪問優化方案之讀寫分離】資料庫優化