要建设网站,外贸公司网站制作公司,谷歌广告推广,wordpress绿色两栏响应式主题官网#xff1a;https://shardingsphere.apache.org/document/legacy/3.x/document/cn/features/sharding/concept/sharding/
1.下面已经实现了根据ID进行分表#xff0c;使用的是shardingJDBC ID 生成策略为 SNOWFLAKE 2.自己传ID进来也可以根据ID进行分表 3.自己建表这些https://shardingsphere.apache.org/document/legacy/3.x/document/cn/features/sharding/concept/sharding/
1.下面已经实现了根据ID进行分表使用的是shardingJDBC ID 生成策略为 SNOWFLAKE 2.自己传ID进来也可以根据ID进行分表 3.自己建表这些mybatis配置这些就不用多说了吧只需要下面的配置就可以使用了但是要注意配置文件中的每个参数名的配置层级我在进行配置的时候就是因为参数层级位置不对的问题弄了一下午比如spring下面是shardingsphere 必须严格按照层级问题重点注意 需要使用到的pom需要注意如果shardingJDBC要和druid一起使用那么druid是spring的jar包不是springboot的jar重点注意 !-- shardingJDBC--
dependencygroupIdorg.apache.shardingsphere/groupIdartifactIdsharding-jdbc-spring-boot-starter/artifactIdversion4.1.1/version
/dependency!-- 需要注意如果shardingJDBC要和druid一起使用那么druid是spring的jar包不是springboot的jar --!-- druid数据源--
dependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.1.22/version
/dependency全部采用YML配置进行数据源的配置
# 数据分片应用于单库分表操作
spring:shardingsphere:datasource:names: db1db1: # 数据库type: com.alibaba.druid.pool.DruidDataSourcedriver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/tg_project?useUnicodetruecharacterEncodingutf-8useSSLtrueserverTimezoneUTCusername: rootpassword: rootsharding:tables:tg_weld_after_rule:# 配置表的分布表的策略actual-data-nodes: db1.tg_weld_after_rule_$-{0..1}# 指定user_info表 主键id 生成策略为 SNOWFLAKEkey-generator:column: idtype: SNOWFLAKE# 指定分片策略table-strategy:inline:#根据年龄插入不同的表如果年龄大于15岁插入user_info1表如果年龄小于或等于15插入user_info2表sharding-column: idalgorithm-expression: tg_weld_after_rule_$-{id%2}druid:initial-size: 5 #初始化大小min-idle: 5 #最小max-active: 100 #最大max-wait: 60000 #连接超时时间##配置间隔多久进行一次检测检测需要关闭的空闲连接单位毫秒time-between-eviction-runs-millis: 60000##指定空闲连接最少空闲多久可以被清除min-evictable-idle-time-millis: 30000validation-query: select X##当连接空闲时是否执行连接测试test-while-idle: true##当从连接池借用连接时是否测试该连接test-on-borrow: false##当连接归还到连接池时是否测试该连接test-on-return: false##配置监控统计拦截的filters,去掉后监控界面sql无法统计‘wall’ 用于防火墙filters: wall,stat,log4jpool-prepared-statements: truemax-pool-prepared-statement-per-connection-size: 20max-open-prepared-statements: 20# 通过connectProperties属性来打开mergeSql功能慢SQL记录connectionProperties: druid.stat.slowSqlMillis200;druid.stat.logSlowSqltrue# WebStatFilter配置说明请参考Druid Wiki配置_配置WebStatFilter#是否启用StatFilter默认值trueweb-stat-filter:enabled: trueurl-pattern: /*exclusions: /druid/*,*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.icosession-stat-enable: truesession-stat-max-count: 10# StatViewServlet配置说明请参考Druid Wiki配置_StatViewServlet配置#是否启用StatViewServlet默认值truestat-view-servlet:enabled: trueurl-pattern: /druid/*reset-enable: truelogin-username: adminlogin-password: adminfilter:stat:db-type: mysqllog-slow-sql: trueslow-sql-millis: 5000wall:enabled: truedb-type: mysqlconfig:drop-table-allow: falseprops:# 打开sql输出日志sql:show: true