美文网首页
分库分表第六篇之读写分离和主从复制

分库分表第六篇之读写分离和主从复制

作者: 小螺丝钉cici | 来源:发表于2020-05-27 18:10 被阅读0次

    读写分离
    当一个库的查询压力过大之后,我们通常会进行读写分离操作

    配置:
    如下:一主二从

    ##数据源名称,多数据源以逗号分隔
    sharding.jdbc.datasource.names=dsmaster,dssalve0,dssalve1
     
    sharding.jdbc.datasource.dsmaster.type=com.zaxxer.hikari.HikariDataSource
    sharding.jdbc.datasource.dsmaster.driver-class-name=com.mysql.jdbc.Driver
    sharding.jdbc.datasource.dsmaster.jdbc-url=jdbc:mysql://localhost:3306/dsmaster?createDatabaseIfNotExist=true
    sharding.jdbc.datasource.dsmaster.username=root
    sharding.jdbc.datasource.dsmaster.password=root
     
    sharding.jdbc.datasource.dssalve0.type=com.zaxxer.hikari.HikariDataSource
    sharding.jdbc.datasource.dssalve0.driver-class-name=com.mysql.jdbc.Driver
    sharding.jdbc.datasource.dssalve0.jdbc-url=jdbc:mysql://localhost:3306/dssalve0?createDatabaseIfNotExist=true
    sharding.jdbc.datasource.dssalve0.username=root
    sharding.jdbc.datasource.dssalve0.password=root
     
    sharding.jdbc.datasource.dssalve1.type=com.zaxxer.hikari.HikariDataSource
    sharding.jdbc.datasource.dssalve1.driver-class-name=com.mysql.jdbc.Driver
    sharding.jdbc.datasource.dssalve1.jdbc-url=jdbc:mysql://localhost:3306/dssalve1?createDatabaseIfNotExist=true
    sharding.jdbc.datasource.dssalve1.username=root
    sharding.jdbc.datasource.dssalve1.password=root
     
    #查询时的负载均衡算法,目前有2种算法,round_robin(轮询)和random(随机)
    sharding.jdbc.config.masterslave.load-balance-algorithm-type=round_robin
    #主从名称
    sharding.jdbc.config.masterslave.name=ms
    #主数据源名称
    sharding.jdbc.config.masterslave.master-data-source-name=dsmaster
    #从数据源名称,多个用逗号隔开
    sharding.jdbc.config.masterslave.slave-data-source-names=dssalve0,dssalve1
     
    #是否开启SQL显示,默认值: false
    sharding.jdbc.config.masterslave.props.sql.show= true
     
    
    
    修改application.properties文件:
    #spring.profiles.active=jpa-databases
    #spring.profiles.active=sharding-databases
    spring.profiles.active=master-slave
    

    可以简单测试下:
    (1)运行testSave():数据会保存到dsmaster
    (2)手动把数据复制到从库
    (3)运行testPage():会从从库进行查询。

    主从复制
    主从复制见网络文章,可以一步一步实战:
    https://www.cnblogs.com/xhyan/p/6598992.html

    未完待续

    相关文章

      网友评论

          本文标题:分库分表第六篇之读写分离和主从复制

          本文链接:https://www.haomeiwen.com/subject/jjkgahtx.html