变更历史

    配置项说明

    配置项说明

    1. ds_master: !!org.apache.commons.dbcp.BasicDataSource
    2. driverClassName: com.mysql.jdbc.Driver
    3. url: jdbc:mysql://localhost:3306/ds_master
    4. username: root
    5. password:
    6. ds_slave0: !!org.apache.commons.dbcp.BasicDataSource
    7. driverClassName: com.mysql.jdbc.Driver
    8. url: jdbc:mysql://localhost:3306/ds_slave0
    9. username: root
    10. password:
    11. ds_slave1: !!org.apache.commons.dbcp.BasicDataSource
    12. driverClassName: com.mysql.jdbc.Driver
    13. url: jdbc:mysql://localhost:3306/ds_slave1
    14. username: root
    15. password:
    16. name: ds_ms
    17. masterDataSourceName: ds_master
    18. slaveDataSourceNames: [ds_slave0, ds_slave1]
    19. props:
    20. sql.show: true

    配置项说明

    1. dataSources:
    2. driverClassName: com.mysql.jdbc.Driver
    3. url: jdbc:mysql://localhost:3306/ds_master
    4. username: root
    5. password:
    6. ds_slave0: !!org.apache.commons.dbcp.BasicDataSource
    7. driverClassName: com.mysql.jdbc.Driver
    8. url: jdbc:mysql://localhost:3306/ds_slave0
    9. username: root
    10. password:
    11. ds_slave1: !!org.apache.commons.dbcp.BasicDataSource
    12. driverClassName: com.mysql.jdbc.Driver
    13. url: jdbc:mysql://localhost:3306/ds_slave1
    14. username: root
    15. password:
    16. masterSlaveRule:
    17. name: ds_ms
    18. masterDataSourceName: ds_master
    19. slaveDataSourceNames: [ds_slave0, ds_slave1]
    20. props:
    21. sql.show: true
    22. configMap:
    23. key1: value1

    概念

    支持项

    1. 提供了一主多从的读写分离配置,可独立使用,也可配合分库分表使用。
    2. 同一线程且同一数据库连接内,如有写入操作,以后的读操作均从主库读取,用于保证数据一致性。
    3. Spring命名空间。
    4. 基于Hint的强制主库路由。

    不支持范围

    1. 主库和从库的数据同步。
    2. 主库和从库的数据同步延迟导致的数据不一致。
    3. 主库双写或多写。

    配置规则

    1. dataSources:
    2. driverClassName: org.h2.Driver
    3. url: jdbc:h2:mem:db_master;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;MODE=MYSQL
    4. username: sa
    5. password:
    6. maxActive: 100
    7. db_slave_0: !!org.apache.commons.dbcp.BasicDataSource
    8. driverClassName: org.h2.Driver
    9. url: jdbc:h2:mem:db_slave_0;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;MODE=MYSQL
    10. username: sa
    11. password:
    12. maxActive: 100
    13. db_slave_1: !!org.apache.commons.dbcp.BasicDataSource
    14. driverClassName: org.h2.Driver
    15. url: jdbc:h2:mem:db_slave_1;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;MODE=MYSQL
    16. username: sa
    17. password:
    18. maxActive: 100
    19. masterSlaveRule:
    20. name: db_ms
    21. masterDataSourceName: db_master
    22. slaveDataSourceNames: [db_slave_0, db_slave_1]
    23. configMap:
    24. key1: value1