Spring boot 无法创建/设置连接:ORA-01017,因为setenv.sh环境变量具有换行符
我在Spring Boot Data JPA应用程序中遇到以下错误:Spring boot 无法创建/设置连接:ORA-01017,因为setenv.sh环境变量具有换行符,spring-boot,spring-data-jpa,environment-variables,application.properties,setenv,Spring Boot,Spring Data Jpa,Environment Variables,Application.properties,Setenv,我在Spring Boot Data JPA应用程序中遇到以下错误: java.sql.SQLException: ORA-01017: invalid username/password; logon denied at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450) ~[ojdbc6-11.2.0.jar:12.1.0.1.0] at oracle.jdbc.driver.T4CTTIoer.processErro
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:392) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:385) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:938) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:476) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:655) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:249) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:412) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:821) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:596) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:711) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:385) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:30) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:558) ~[ojdbc6-11.2.0.jar:12.1.0.1.0]
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:136) ~[HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:369) ~[HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:198) ~[HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:467) [HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:541) [HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) [HikariCP-3.2.0.jar:na]
at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) [HikariCP-3.2.0.jar:na]
我的setenv.sh如下所示:
export NOTIF_USU="stack"
export NOTIF_PASS="overflow"
我在日志中得到的是:
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : HikariPool-1 - configuration:
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : allowPoolSuspension.............false
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : autoCommit......................true
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : catalog.........................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionInitSql...............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionTestQuery.............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionTimeout...............30000
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSource......................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceClassName.............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceJNDI..................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceProperties............{password=<masked>}
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : driverClassName................."oracle.jdbc.OracleDriver"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : healthCheckProperties...........{}
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : healthCheckRegistry.............none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : idleTimeout.....................600000
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : initializationFailTimeout.......1
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : isolateInternalQueries..........false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : jdbcUrl.........................jdbc:oracle:thin:@99.99.99.99:1521:STACKOVERFLOW
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : leakDetectionThreshold..........0
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : maxLifetime.....................1800000
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : maximumPoolSize.................10
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : metricRegistry..................none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : metricsTrackerFactory...........none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : minimumIdle.....................10
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : password........................<masked>
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : poolName........................"HikariPool-1"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : readOnly........................false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : registerMbeans..................false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : scheduledExecutor...............none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : schema..........................none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : threadFactory...................internal
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : transactionIsolation............default
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : username........................"stack
"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : validationTimeout...............5000
如果我使用CommandLineRunner打印环境变量,但将“xxx”添加到env.getProperty(“NOTIF_USU”)和env.getProperty(“NOTIF_PASS”)的字符串中,我会得到:
这清楚地表明setenv.sh正在向我的环境变量值添加换行符。如何克服这个问题?在我的例子中,它似乎是Oracle JDBC驱动程序中的一个bug 我把司机换成了司机,结果成功了 希望能有帮助
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : HikariPool-1 - configuration:
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : allowPoolSuspension.............false
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : autoCommit......................true
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : catalog.........................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionInitSql...............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionTestQuery.............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : connectionTimeout...............30000
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSource......................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceClassName.............none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceJNDI..................none
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : dataSourceProperties............{password=<masked>}
2019-11-28 17:28:47.900 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : driverClassName................."oracle.jdbc.OracleDriver"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : healthCheckProperties...........{}
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : healthCheckRegistry.............none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : idleTimeout.....................600000
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : initializationFailTimeout.......1
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : isolateInternalQueries..........false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : jdbcUrl.........................jdbc:oracle:thin:@99.99.99.99:1521:STACKOVERFLOW
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : leakDetectionThreshold..........0
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : maxLifetime.....................1800000
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : maximumPoolSize.................10
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : metricRegistry..................none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : metricsTrackerFactory...........none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : minimumIdle.....................10
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : password........................<masked>
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : poolName........................"HikariPool-1"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : readOnly........................false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : registerMbeans..................false
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : scheduledExecutor...............none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : schema..........................none
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : threadFactory...................internal
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : transactionIsolation............default
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : username........................"stack
"
2019-11-28 17:28:47.901 DEBUG 81456 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : validationTimeout...............5000
2019-11-28 17:30:46.947 DEBUG 81536 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : transactionIsolation............default
2019-11-28 17:30:46.947 DEBUG 81536 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : username........................"stack"
2019-11-28 17:30:46.947 DEBUG 81536 --- [ost-startStop-1] com.zaxxer.hikari.HikariConfig : validationTimeout...............5000
2019-11-29 10:40:41.226 INFO 84308 --- [ost-startStop-1] p.c.s.n.NotificacionesApplication : stack
xxx
2019-11-29 10:40:41.226 INFO 84308 --- [ost-startStop-1] p.c.s.n.NotificacionesApplication : overflow
xxx