IDEA 自動提示配置數據庫連接屬性的坑
application.yml 中的數據庫連接配置如下
# 應用名稱
spring:
application:
name: spring-data-jpa
# 數據庫配置
datasource:
url: jdbc:mysql://192.168.32.32:3306/teach?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
data-username: root #data-username 是使用idea 自動提示的屬性名
data-password: 123456 #data-password 是使用idea 自動提示的屬性名
driver-class-name: com.mysql.cj.jdbc.Driver
這樣會導致程序連接數據庫時,報如下錯誤
java.sql.SQLException: Access denied for user ''@'192.168.44.177' (using password: NO) #這里是自己本機的IP地址,很奇怪,明明自己上面是配置的服務器的IP
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129) ~[mysql-connector-java-8.0.22.jar:8.0.22]
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector-java-8.0.22.jar:8.0.22]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8.0.22.jar:8.0.22]
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836) ~[mysql-connector-java-8.0.22.jar:8.0.22]
解決方案:
# 應用名稱
spring:
application:
name: spring-data-jpa
# 數據庫配置
datasource:
url: jdbc:mysql://192.168.32.32:3306/teach?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
username: root #正確的連接屬性-用戶名
password: 123456 #正確的連接屬性-密碼
driver-class-name: com.mysql.cj.jdbc.Driver
