Retro Eye care Haitian Deep Dark Default

HA

Background

Through YAML format, ShardingSphere will automatically create the ShardingSphereDataSource object according to the YAML configuration, reducing unnecessary coding work for users.

Parameters

rules:
- !READWRITE_SPLITTING
  dataSources:
    replica_ds:
      dynamicStrategy:
        autoAwareDataSourceName: # High availability rule logical data source name

- !DB_DISCOVERY
  dataSources:
    <data_source_name> (+): # Logic data source name
      dataSourceNames: # Data source names
        - <data_source>
        - <data_source>
      discoveryHeartbeatName: # Detect heartbeat name
      discoveryTypeName: # Database discovery type name
  
  # Heartbeat Configuration
  discoveryHeartbeats:
    <discovery_heartbeat_name> (+): # heartbeat name
      props:
        keep-alive-cron: # This is cron expression, such as:'0/5 * * * * ?'
  
  # Database Discovery Configuration
  discoveryTypes:
    <discovery_type_name> (+): # Database discovery type name
      type: # Database discovery type, such as: MySQL.MGR, MySQL.NORMAL_REPLICATION, openGauss.NORMAL_REPLICATION
      props (?):
        group-name: 92504d5b-6dec-11e8-91ea-246e9612aaf1 # Required parameters for database discovery types, such as MGR's group-name

Sample

databaseName: database_discovery_db

dataSources:
  ds_0:
    url: jdbc:mysql://127.0.0.1:33306/primary_demo_ds?serverTimezone=UTC&useSSL=false
    username: root
    password:
    connectionTimeoutMilliseconds: 3000
    idleTimeoutMilliseconds: 60000
    maxLifetimeMilliseconds: 1800000
    maxPoolSize: 50
    minPoolSize: 1
  ds_1:
    url: jdbc:mysql://127.0.0.1:33307/primary_demo_ds?serverTimezone=UTC&useSSL=false
    username: root
    password:
    connectionTimeoutMilliseconds: 3000
    idleTimeoutMilliseconds: 60000
    maxLifetimeMilliseconds: 1800000
    maxPoolSize: 50
    minPoolSize: 1
  ds_2:
    url: jdbc:mysql://127.0.0.1:33308/primary_demo_ds?serverTimezone=UTC&useSSL=false
    username: root
    password:
    connectionTimeoutMilliseconds: 3000
    idleTimeoutMilliseconds: 60000
    maxLifetimeMilliseconds: 1800000
    maxPoolSize: 50
    minPoolSize: 1

rules:
- !READWRITE_SPLITTING
  dataSources:
    replica_ds:
      dynamicStrategy:
        autoAwareDataSourceName: readwrite_ds
- !DB_DISCOVERY
  dataSources:
    readwrite_ds:
      dataSourceNames:
        - ds_0
        - ds_1
        - ds_2
      discoveryHeartbeatName: mgr_heartbeat
      discoveryTypeName: mgr
  discoveryHeartbeats:
    mgr_heartbeat:
      props:
        keep-alive-cron: '0/5 * * * * ?'
  discoveryTypes:
    mgr:
      type: MySQL.MGR
      props:
        group-name: 558edd3c-02ec-11ea-9bb3-080027e39bd2