侧边栏壁纸
博主头像
SeaDream乄造梦

Dream,Don't stop a day of hard and don't give up a little hope。 ——不停止一日努力&&不放弃一点希望。

  • 累计撰写 39 篇文章
  • 累计创建 20 个标签
  • 累计收到 13 条评论

目 录CONTENT

文章目录

mysql数据库连接后缀的作用

SeaDream乄造梦
2022-11-15 / 0 评论 / 0 点赞 / 1,006 阅读 / 1,107 字
温馨提示:
亲爱的,如果觉得博主很有趣就留下你的足迹,并收藏下链接在走叭

想必新手小伙伴们对数据库连接后缀,都会有或多或少有一些疑问,下面跟着猿猿一起看看叭!


url: jdbc:mysql://127.0.0.1:3306/xxx
?useUnicode=true&characterEncoding=utf8
&autoReconnect=true
&allowMultiQueries=true
&useSSL=false
&serverTimezone=Asia/Shanghai
&allowPublicKeyRetrieval=true


1. useUnicode=true

  • useUnicode=true 后面的配置 characterEncoding配置才能生效
  • characterEncoding=utf-8的配置的作用主要配置的是mysql服务端的编码,mysql驱动的代码中,会将将要发送mysql服务端的sql使用characterEncoding指定的值进行转码,然后将转码后的字节发送到mysql服务端。建议我们characterEncoding这个值的配置尽量与mysql服务端的编码一致

2. autoReconnect=true

超时重连: 在使用mysql是的时候,如果超过8小时数据库没有操作,会自动断开连接。

3. allowMultiQueries=true

  • 可以在sql语句后携带分号,实现多语句执行。
  • 可以执行批处理,同时发出多个SQL语句。
  • Mybatis映射文件中的sql语句默认是不支持以" ; " 结尾,也就是不支持多条sql语句的执行。需要在连接mysql的url上加 &allowMultiQueries=true 运行批量操作才可以进行。

4. useSSL=false

SSL:Secure Sockets Layer 安全套接字协议

  • 在mysql进行连接的时候,如果mysql的版本是5.7之后的版本必须要加上useSSL=false,mysql5.7以及之前的版本则不用进行添加useSSL=false,会默认为false
  • useSSL=true是进行安全验证,一般通过证书或者令牌什么的
  • useSSL=false就是通过账号密码进行连接,通常使用useSSL=false

5. serverTimezone=Asia/Shanghai

serverTimezone 关于时区的设置 常见问题:从数据库返回的时间比真正保存的时间提前8小时。 解决:将 serverTimezone=UTC 改为 serverTimezone=Asia/Shanghai

6. allowPublicKeyRetrieval=true

允许客户端从服务器获取公钥

0

评论区