Oracle 19c ORA-01017:应用连接失败但工具正常的调试方法
问题:Spring Boot连接AWS RDS Oracle 19c报ORA-01017错误
环境与连接方式
- AWS RDS部署Oracle 19c数据库
- 本地通过SSH隧道连接,命令:
ssh -N -i ~/rsa_key -L 127.0.0.1:1522:db-dev.gc.net:1522 me@gateway.dev.gc.net - DataGrip使用连接串
jdbc:oracle:thin:@127.0.0.1:1522:DV可正常连接,但Spring Boot(Java 11)应用连接失败
错误信息
ERROR restartedMain c.z.h.p.HikariPool:594 - HikariPool-2 - Exception during pool initialization. java.sql.SQLException: ORA-01017: invalid username/password; logon denied
项目配置
build.gradle依赖
dependencies { api 'com.oracle.database.jdbc:ojdbc11:21.1.0.0' testImplementation 'com.h2database:h2' testImplementation "org.springframework.security:spring-security-test:5.1.3.RELEASE" }
application.yml配置
core: datasource: driverClassName: oracle.jdbc.OracleDriver jdbc-url: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1522))(CONNECT_DATA=(SERVER=DEDICATED)(SID=DV))) username: dbuser password: dbpassword platform: oracle dialect: org.hibernate.dialect.Oracle10gDialect
已排查项
- 已将DataGrip中可用的账号密码完整复制到应用配置
- 数据库参数
sec_case_sensitive_logon设为TRUE - DBA_USERS中
dbuser账号状态为OPEN - 尝试用Wireshark监听
tcp.dstport==1522,未抓到有效凭证信息
疑问
是否可通过SSH隧道日志、Wireshark监控凭证传输,或查看AWS Oracle日志来确认认证所用的账号密码?猜测JDBC驱动可能修改了application.yml中的密码(如大小写转换),但目前未找到有效验证方式。
内容的提问来源于stack exchange,提问作者Samuel Alito
相关产品推荐
相关产品推荐

