前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL JDBC URL各参数详解

MySQL JDBC URL各参数详解

作者头像
全栈程序员站长
发布2022-09-13 13:02:07
2.3K0
发布2022-09-13 13:02:07
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

通常MySQL连接URL可以设置为:

代码语言:javascript
复制
jdbc:mysql://localhost:3306/test?user=root&password=123456&useUnicode=true&characterEncoding=gbk
&autoReconnect=true&failOverReadOnly=false&serverTimezone=UTC&driver=com.mysql.cj.jdbc.Driver

注:test 是数据库名;user 指定登录用户名;password 指定密码。

参数介绍

参数名称

参数说明

缺省值

最低版本要求

user

数据库用户名(用于连接数据库)

password

用户密码(用于连接数据库)

useUnicode

是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true

false

1.1g

useSSL

MySQL在高版本需要指明是否进行SSL连接 在mysql连接字符串url中加入ssl=true或者false即可

characterEncoding

当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk

false

1.1g

autoReconnect

当数据库连接异常中断时,是否自动重新连接?

false

1.1

autoReconnectForPools

是否使用针对数据库连接池的重连策略

false

3.1.3

failOverReadOnly

自动重连成功后,连接是否设置为只读?

true

3.0.12

maxReconnects

autoReconnect设置为true时,重试连接的次数

3

1.1

initialTimeout

autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒

2

1.1

connectTimeout

和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本

0

3.0.1

socketTimeout

socket操作(读写)超时,单位:毫秒。 0表示永不超时

0

3.0.1

allowMultiQueries

mysql驱动开启批量执行sql的开关

false

serverTimezone

设置时区 例如 serverTimezone=UTC(统一标准世界时间)或serverTimezone=Asia/Shanghai(中国时区)

tinyInt1isBit

如果tinyInt1isBit =true(默认),且tinyInt存储长度为1 ,则转为java.lang.Boolean 。否则转为java.lang.Integer。

true


  • 中文环境中,characterEncoding配置为gbk
  • 出现中文乱码时,解决办法就是:useUnicode=true&characterEncoding=UTF-8
  • UTC是统一标准世界时间
  • 如果tinyInt1isBit =true(默认),且把数据类型tinyInt存储长度设为1,那么数据库tinyInt类型会自动转成Java的Boolean,否则自动转成Java的Integer。如果希望转成Java的整数型,则将tinyInt1isBit设为false,或者把tinyInt的长度设为大于1,即tinyInt(N), N>1,例如 tinyInt(2)。也就是说,默认情况下,把字段的数据类型定义为tinyInt(1) ,是用来代表Boolean含义的字段,对应的是Java的Boolean类型,如果插入true,数据库会自动保存1,插入false数据库会自动保存0
  • inyInt1isBit参数名区分大小写,否则不生效
  • 在使用数据库连接池的情况下,最好设置如下两个参数: autoReconnect=true&failOverReadOnly=false
  • 在xml配置文件中,url中的&符号需要转义成&amp ;。比如在tomcat的server.xml中配置数据库连接池时,MySQL JDBC URL如下:
代码语言:javascript
复制
jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=gbk
&autoReconnect=true&failOverReadOnly=false

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/160552.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参数介绍
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档