【发布时间】:2021-04-14 21:23:37
【问题描述】:
尝试在springboot中使用如下配置连接mysql数据库:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/community?Unicode=true&characterEncoding=UTF-8&serverTimezone=America/Boston
username: root
password: 01021234
hikari:
pool-name: DateHikariCP
minimum-idle: 5
idle-timeout: 180000
maximum-pool-size: 10
auto-commit: true
max-lifetime: 1800000
connection-timeout: 30000
connection-test-query: SELECT 1
它给了我一个例外java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)。
奇怪的是,我有另一个项目,我使用几乎相同的配置,但它工作正常,没有任何错误:
# DataSourceProperties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/community?characterEncoding=utf-8&useSSL=false&serverTimezone=America/Boston
spring.datasource.username=root
spring.datasource.password=01021234
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.hikari.maximum-pool-size=15
spring.datasource.hikari.minimum-idle=5
spring.datasource.hikari.idle-timeout=30000
我尝试将网址更改为以下内容,现在可以正常工作了:
url: jdbc:mysql://localhost:3306/community?user=root&password=01021234&Unicode=true&characterEncoding=UTF-8&serverTimezone=America/Chicago
但我现在很困惑为什么我发布的代码的第一个 sn-p 不起作用。
【问题讨论】:
-
您是否尝试将 URL “按原样”从其工作的属性文件复制到 yaml?一般来说,Spring Boot 应该能够以相同的方式处理 yaml 和属性。我的想法是了解这个问题是否与spring boot有任何关系(如果它不起作用)或者我们正在谈论连接参数到mysql的含义
-
是的,我试过了,但还是不行。
标签: java mysql spring spring-boot