mysql jdbc allow_mysql的jdbc.url携带allowMultiQueries=true参数的作用及其原理

本文详细解析了 MySQL JDBC URL 中的参数配置,特别是 allowMultiQueries 参数的作用和底层机制。介绍了如何利用该参数实现 SQL 多语句执行及批处理。

如下配置

jdbc.url=jdbc:mysql://127.0.0.1:3306/chubb_2?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true

allowMultiQueries=true参数的作用:

①可以在sql语句后携带分号,实现多语句执行。

如:mybatis的mapper.xml文件

SELECT * FROM x;

②可以执行批处理,同时发出多个SQL语句。

UPDATE

dev_rel

gmt_modified=now(),

pro_id = #{devRelDO.proId},

dev_id = #{devRelDO.devId},

group_id = #{devRelDO.groupId},

own_type = #{devRelDO.ownType}

id = #{devRelDO.id}

底层原理:

参考:

https://my.oschina.net/zhuguowei/blog/411853

https://blog.youkuaiyun.com/xuezhezhishen/article/details/78692698

https://my.oschina.net/freedemon/blog/1813816

https://www.cnblogs.com/jeffen/p/6038261.html

https://blog.youkuaiyun.com/qq_26718271/article/details/65629805

Mysql JDBC Url参数说明useUnicode=true&characterEncoding=UTF-8

MySQL的 JDBC URL 格式 for  Connector/J 如下例: jdbc:mysql://[host][,failoverhost...][:port]/[database] » [ ...

Jdbc Url 设置allowMultiQueries为true和false时底层处理机制研究

一个mysql jdbc待解之谜 关于jdbc  url参数 allowMultiQueries 如下的一个普通JDBC示例: String user ="root"; Strin ...

mysql:JDBC url 参数详解

MySql链接url参数详解 jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值2]... ...

jdbc URL中的各个参数详解

常用的有两个,一个是gjt(Giant JavaTree)组织提供的mysql驱动,其JDBC Driver名称(Java类名)为:org.gjt.mm.mysql.Driver 详情请参见网站:ht ...

Django里URL配置中name参数的作用

先看一下URL配置,新增了如下内容: 修改视图views.py 增加一个页面 现在要求是在name页面里面增加一个链接,显示详细信息.修改name页面 这个功能实现了,可是之前添加的那个name参数是 ...

MySQL JDBC URL参数(转)

MySQL的 JDBC URL格式: jdbc:mysql://[host][,failoverhost...][:port]/[database] » [?propertyName1][=prope ...

超详细,多图文使用galera cluster搭建mysql集群并介绍wsrep相关参数

超详细,多图文使用galera cluster搭建mysql集群并介绍wsrep相关参数 介绍galera cluster原理的文章已经有一大堆了,百度几篇看一看就能有相关了解,这里就不赘述了.本文主 ...

mysql JDBC URL格式各个参数详解

mysql JDBC URL格式如下: jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值 ...

随机推荐

Springboot数据库连接池报错的解决办法

Springboot数据库连接池报错的解决办法 这个异常通常在Linux服务器上会发生,原因是Linux系统会主动断开一个长时间没有通信的连接 那么我们的问题就是:数据库连接池长时间处于间歇状态,导致 ...

Download Free Oracle Reports Building Guide eBook

A very nice ebook on building reports in Oracle fusion middleware 11g. This manual is intended for a ...

获取root权限

1.用root建立一个普通用户mary,并切换到mary. < 2.我们首先测试一下当前用户的权限 3.进入到/tmp,新建目录abc. 4.执行下列相关命令.并保证最后一行后面的两块红色部分为 ...

Git命令参考手册&lpar;转&rpar;

git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 git config --glob ...

(转载)oracle的v&dollar;sqlarea表

原文摘自:http: [V$SQLAREA]  本视图持续跟踪所有shared pool中的共享cursor,在shared pool中的每一条SQL语句都对应一列.本视图在分析SQL语句资源使用方面 ...

python学习之路基础篇&lpar;第四篇&rpar;

一.课程内容回顾 1.python基础 2.基本数据类型  (str|list|dict|tuple) 3.将字符串“老男人”转换成utf-8 s = "老男人" ret = by ...

Tomcat系列&lpar;7&rpar;——Tomcat类加载机制

1. 核心部分 1. 类加载器: 通过一个类的全限定名来获取描述此类的二进制字节流. 对于任意一个类,都需要由加载他的类加载器和这个类本身一同确立其在Java虚拟机中的唯一性,每一个类加载器,都拥有一 ...

【Windows 7】发现一个奇怪的现象

最近在Windows7-32位操作系统上发现一个奇怪的现象,不知道64位操作系统上会不会发生这个现象.这个现象就是:如果系统上的一个或多个账户没有设置密码,那么在此条件下终止winlogon.exe进 ...

关于&quot&semi;Linux下使用Windows应用程序的尝试&quot&semi;总结

首推 Flatpak .Flatpak爽啊,命令行启动能不爽吗!? 其他的: 0. AppImage:AppImage试了下,唉,启动TIM时就没反应,其他的应用没试过 1. crossover:收费 ...

转载&colon;必须收藏!50个最流行的免费Kubernetes工具集

必须收藏!50个最流行的免费Kubernetes工具集 http://cloud.51cto.com/art/201806/576406.htm 在短短的两年时间里,Kubernetes在容器编排的竞 ...

dzicssofty用户本身就没有权限应该是sanyic才有权限 #-------------------------- spring.shardingsphere.datasource.names=ds1,ds2 #1\u53F7\u5E93\u6570\u636E\u6E90 spring.shardingsphere.datasource.ds1.type=com.alibaba.druid.pool.DruidDataSource spring.shardingsphere.datasource.ds1.driver-class-name=com.mysql.cj.jdbc.Driver spring.shardingsphere.datasource.ds1.url=jdbc:mysql://192.168.17.232:3306/wms_2575?useSSL=false&useUnicode=true&useJDBCCompliantTimezoneShift=true&serverTimezone=GMT%2B8&characterEncoding=UTF-8&allowMultiQueries=true spring.shardingsphere.datasource.ds1.username=sanyi spring.shardingsphere.datasource.ds1.password=sanyi spring.shardingsphere.datasource.ds1.initialSize=3 spring.shardingsphere.datasource.ds1.minIdle=3 spring.shardingsphere.datasource.ds1.maxActive=18 spring.shardingsphere.datasource.ds1.maxWait=60000 spring.shardingsphere.datasource.ds1.timeBetweenEvictionRunsMillis=60000 spring.shardingsphere.datasource.ds1.validationQuery=SELECT 1 FROM dual spring.shardingsphere.datasource.ds1.testWhileIdle=true spring.shardingsphere.datasource.ds1.testOnBorrow=false spring.shardingsphere.datasource.ds1.testOnReturn=false #0\u53F7\u5E93\u6570\u636E\u6E90 spring.shardingsphere.datasource.ds2.type=com.alibaba.druid.pool.DruidDataSource spring.shardingsphere.datasource.ds2.driver-class-name=com.mysql.cj.jdbc.Driver spring.shardingsphere.datasource.ds2.url=jdbc:mysql://192.168.16.88:3306/erp?useSSL=false&useUnicode=true&useJDBCCompliantTimezoneShift=true&serverTimezone=GMT%2B8&characterEncoding=UTF-8&allowMultiQueries=true spring.shardingsphere.datasource.ds2.username=dzicssoft spring.shardingsphere.datasource.ds2.password=dzicssoft@2023 spring.shardingsphere.datasource.ds2.initialSize=3 spring.shardingsphere.datasource.ds2.minIdle=3 spring.shardingsphere.datasource.ds2.maxActive=18 spring.shardingsphere.datasource.ds2.maxWait=60000 spring.shardingsphere.datasource.ds2.timeBetweenEvictionRunsMillis=60000 spring.shardingsphere.datasource.ds2.validationQuery=SELECT 1 FROM dual spring.shardingsphere.datasource.ds2.testWhileIdle=true spring.shardingsphere.datasource.ds2.testOnBorrow=false spring.shardingsphere.datasource.ds2.testOnReturn=false #--------------------------- spring.shardingsphere.props.sql.show=true mybatis.configuration.map-underscore-to-camel-case=true
08-27
Properties检查语法:server.port=9012 spring.application.name=saas-base # logback logging.config=classpath:saas-logback.xml logPath=/app/lds-pxp/${spring.application.name}/logs logging.maxHistory=30 #\u670D\u52A1\u6CE8\u518C\u4E2D\u5FC3,\u96C6\u7FA4\u591A\u4E2A\u6709\u9017\u53F7\u5206\u5272 spring.profiles.active=prod spring.cloud.nacos.discovery.server-addr=192.168.88.130:9848 spring.cloud.nacos.config.server-addr=${spring.cloud.nacos.discovery.server-addr} spring.main.allow-bean-definition-overriding=true #spring.cloud.nacos.config.file-extension=properties #spring.cloud.nacos.config.shared-configs[0]=application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} spring.redis.host=192.168.88.130 spring.redis.port=6379 spring.redis.password=123456 spring.redis.database=15 spring.datasource.druid.stat-view-servlet.enabled=true spring.datasource.druid.stat-view-servlet.loginUsername=admin spring.datasource.druid.stat-view-servlet.loginPassword=123456 spring.datasource.dynamic.druid.initial-size=5 spring.datasource.dynamic.druid.min-idle=5 spring.datasource.dynamic.druid.maxActive=20 spring.datasource.dynamic.druid.maxWait=60000 spring.datasource.dynamic.druid.timeBetweenEvictionRunsMillis=60000 spring.datasource.dynamic.druid.minEvictableIdleTimeMillis=300000 spring.datasource.dynamic.druid.validationQuery=SELECT 1 FROM DUAL spring.datasource.dynamic.druid.testWhileIdle=true spring.datasource.dynamic.druid.testOnBorrow=false spring.datasource.dynamic.druid.testOnReturn=false spring.datasource.dynamic.druid.poolPreparedStatements=true spring.datasource.dynamic.druid.maxPoolPreparedStatementPerConnectionSize=20 spring.datasource.dynamic.druid.filters=stat,slf4j spring.datasource.dynamic.druid.connectionProperties=druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000 spring.datasource.dynamic.datasource.master.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.dynamic.datasource.master.url=jdbc:mysql://192.168.88.130:3306/dev_base?useUnico
04-01
server.port=9999 # 打印SQL spring.shardingsphere.props.sql-show = true spring.main.allow-bean-definition-overriding = true # ----------------数据源配置 # 指定对应的库 spring.shardingsphere.datasource.names=db spring.shardingsphere.datasource.db.type=com.alibaba.druid.pool.DruidDataSource spring.shardingsphere.datasource.db.driver-class-name=com.mysql.cj.jdbc.Driver spring.shardingsphere.datasource.db.url=jdbc:mysql://localhost:3306/courcedb?serverTimezone=UTC spring.shardingsphere.datasource.db.username=root spring.shardingsphere.datasource.db.password=root #------------------------分布式序列算法配置 # 雪花算法,生成Long类型主键。 spring.shardingsphere.rules.sharding.key-generators.alg_snowflake.type=SNOWFLAKE spring.shardingsphere.rules.sharding.key-generators.alg_snowflake.props.worker.id=1 # 指定分布式主键生成策略 spring.shardingsphere.rules.sharding.tables.device_data.key-generate-strategy.column=did spring.shardingsphere.rules.sharding.tables.device_data.key-generate-strategy.key-generator-name=alg_snowflake spring.shardingsphere.rules.sharding.tables.cxz_data.key-generate-strategy.column=cid spring.shardingsphere.rules.sharding.tables.cxz_data.key-generate-strategy.key-generator-name=alg_snowflake #-----------------------配置实际分片节点 spring.shardingsphere.rules.sharding.tables.device_data.actual-data-nodes=db.device_data_$->\ {['00500223102300021065','00500223103000037203','00500224051200003846','00500224051200007426','00500224051200012254','00500224051200028265','00500224051200028512','0D0807E408003A2C049C32DC','0D0807E408003E3A049C32DC','869516056746220']} spring.shardingsphere.rules.sharding.tables.cxz_data.actual-data-nodes=db.cxz_data_$->\ {['1101070001','1101070002','1101070003','1101070004','5108000001']} #给course表指定分表策略 standard-按单一分片键进行精确或范围分片 spring.shardingsphere.rules.sharding.tables.device_data.table-strategy.standard.sharding-column=deviceid spring.shardingsphere.rules.sharding.tables.device_data.table-strategy.standard.sharding-algorithm-name=course_tbl_alg spring.shardingsphere.rules.sharding.tables.cxz_data.table-strategy.standard.sharding-column=deviceid spring.shardingsphere.rules.sharding.tables.cxz_data.table-strategy.standard.sharding-algorithm-name=cxz_tbl_alg # 分表策略-INLINE:按单一分片键分表 spring.shardingsphere.rules.sharding.sharding-algorithms.course_tbl_alg.type=INLINE spring.shardingsphere.rules.sharding.sharding-algorithms.course_tbl_alg.props.algorithm-expression=device_data_$->{deviceid} spring.shardingsphere.rules.sharding.sharding-algorithms.cxz_tbl_alg.type=INLINE spring.shardingsphere.rules.sharding.sharding-algorithms.cxz_tbl_alg.props.algorithm-expression=cxz_data_$->{deviceid} 这个是我单体项目demo的配置文件,执行测试类都没有问题 spring.shardingsphere.props.sql-show = true spring.main.allow-bean-definition-overriding = true #????? spring.shardingsphere.datasource.names= db spring.shardingsphere.datasource.db.type= com.alibaba.druid.pool.DruidDataSource spring.shardingsphere.datasource.db.drive_calss_name= com.mysql.jdbc.Driver spring.shardingsphere.datasource.db.url= jdbc:mysql://localhost:3306/courcedb?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&autoReconnect=true spring.shardingsphere.datasource.db.username= root spring.shardingsphere.datasource.db.password= root # ????table,??????????? spring.shardingsphere.rules.sharding.tables.worm.key-generate-strategy.column= id spring.shardingsphere.rules.sharding.tables.worm.key-generate-strategy.key-generator-name=worm_snowflake #?????? spring.shardingsphere.rules.sharding.tables.worm.actual-data-nodes= db.worm_$->{1..2} #??????,??????????? spring.shardingsphere.rules.sharding.tables.worm.table-strategy.standard.sharding-column= id spring.shardingsphere.rules.sharding.tables.worm.table-strategy.standard.sharding-algorithm-name= worm_tlb_alg #?????? spring.shardingsphere.rules.sharding.key-generators.worm_snowflake.type= SNOWFLAKE spring.shardingsphere.rules.sharding.key-generators.worm_snowflake.props.worker-id= 1 #???? spring.shardingsphere.rules.sharding.sharding-algorithms.worm_tlb_alg.type= INLINE spring.shardingsphere.rules.sharding.sharding-algorithms.worm_tlb_alg.props.algorithm-expression=worm_$->{id%2+1} 这个是我正式项目的配置文件 为什么正式项目执行测试类会出现Inline sharding algorithm expression cannot be null or empty 错误
最新发布
11-12
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值