數據庫:主庫(寫)+2從庫(讀)
db_write(寫數據庫master)
db_read1(讀數據庫slave1)
druid數據庫連接池,db_read2(讀數據庫slave2)
pom.xml
4.0.0
com.zsk
jpa和mybatis哪個好、springboot-read-write-separate
0.0.1-SNAPSHOT
org.springframework.boot
spring-boot-starter-parent
spring整合druid,2.0.8.RELEASE
UTF-8
UTF-8
1.8
jdbc resultset?org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
redis 讀寫分離,test
org.springframework.boot
spring-boot-devtools
org.springframework.boot
PolarDB MySQL。spring-boot-starter-data-jpa
mysql
mysql-connector-java
org.projectlombok
MySQL source、lombok
provided
com.alibaba
druid-spring-boot-starter
java讀寫分離,1.1.10
io.shardingsphere
sharding-jdbc-spring-boot-starter
3.1.0.M1
io.springfox
springfox-swagger2
2.7.0
io.springfox
springfox-swagger-ui
2.7.0
org.springframework.boot
spring-boot-maven-plugin
application.yml
server:
port:8080spring:
jpa:
show-sql: falseproperties:
hibernate:
hbm2ddl:
auto: none#update
sharding:
jdbc:
dataSource:
names: db-write,db-read1,db-read2#配置主庫
db-write: #org.apache.tomcat.jdbc.pool.DataSourcetype: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_write?useUnicode=true&characterEncoding=utf8&tinyInt1isBit=false&useSSL=false&serverTimezone=GMT
username: amsuser
password: ams2018#最大連接數
maxPoolSize:20db-read1: #配置第一個從庫type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_read1?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT
username: amsuser
password: ams2018
maxPoolSize:20db-read2: #配置第二個從庫type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_read2?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT
username: amsuser
password: ams2018
maxPoolSize:20config:
masterslave:#配置讀寫分離load-balance-algorithm-type: round_robin # 配置從庫選擇策略random(隨機)round_robin(輪循)name: db-write-read
master-data-source-name: db-write
slave-data-source-names: db-read1,db-read2
props:
sql:# 開啟SQL顯示,默認值: false,注意:僅配置讀寫分離時不會打印日志
show:true
效果:
post http://127.0.0.1:8080/api/user 數據寫入了db_write庫
get http://127.0.0.1:8080/api/users 多次訪問輪詢讀取db_read1庫,db_read2庫的數據
返回數據如下
[{"id":"bc2bc1ce-c278-11ea-8c98-8c1645da95ec","userName":"db_read1","password":"123456","createTime":"2020-07-10T06:43:59.000+0000"}]
[{"id":"bc2bc1ce-c278-11ea-8c98-8c1645da95ec","userName":"db_read2","password":"123456","createTime":"2020-07-10T06:43:59.000+0000"}]
配置mysql從庫監聽同步主庫數據
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态