Spring Boot 连接 MySQL 配置参数详解

Spring Boot 连接 MySQL 配置参数详解

前言

在 Spring Boot 中使用 Druid 连接池配置 MySQL 数据库连接时,URL 中 ? 后面的参数用于指定连接的各种属性。以下是常见参数及其含义:

参数及含义

常用参数及讲解和示例

useUnicode 参数说明:

useUnicode=true 表示启用 Unicode 字符集传输,通常与 characterEncoding 一起使用:

java 复制代码
useUnicode=true&characterEncoding=UTF-8

这组参数确保:

数据库能正确处理非 ASCII 字符(如中文)

客户端和服务器之间使用 UTF-8 编码传输数据

完整配置示例

java 复制代码
spring.datasource.druid.master.url=jdbc:mysql://localhost:3306/db_name?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
spring.datasource.druid.master.username=root
spring.datasource.druid.master.password=123456
spring.datasource.druid.master.driver-class-name=com.mysql.cj.jdbc.Driver

注意事项

MySQL 8.0+ 需要添加时区设置 serverTimezone

生产环境应考虑使用 SSL 连接 (useSSL=true)

批量操作时可启用 rewriteBatchedStatements 提高性能

高并发场景可调整连接池参数和超时设置

相关推荐
一 乐27 分钟前
婚纱摄影网站|基于ssm + vue婚纱摄影网站系统(源码+数据库+文档)
前端·javascript·数据库·vue.js·spring boot·后端
码事漫谈2 小时前
Protocol Buffers 编码原理深度解析
后端
码事漫谈2 小时前
gRPC源码剖析:高性能RPC的实现原理与工程实践
后端
期待のcode3 小时前
前后端分离项目 Springboot+vue 在云服务器上的部署
服务器·vue.js·spring boot
踏浪无痕3 小时前
AI 时代架构师如何有效成长?
人工智能·后端·架构
程序员小假3 小时前
我们来说一下无锁队列 Disruptor 的原理
java·后端
ProgramHan4 小时前
Spring Boot 3.2 新特性:虚拟线程的落地实践
java·jvm·spring boot
萧曵 丶5 小时前
MySQL 主键不推荐使用 UUID 的深层原因
数据库·mysql·索引
武子康5 小时前
大数据-209 深度理解逻辑回归(Logistic Regression)与梯度下降优化算法
大数据·后端·机器学习
maozexijr5 小时前
Rabbit MQ中@Exchange(durable = “true“) 和 @Queue(durable = “true“) 有什么区别
开发语言·后端·ruby