今天使用Java程序连接一台Oracle数据库(ORACLE 11g)时,遇到了“ORA-12514, TNS:listener does not currently know of service requested in connect descriptor”错误,具体提示如下所示
Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
遇到这个问题,其实我是慌得一批,自己也是第一次操作Oracle数据库,遇到这个问题我也不知道怎么解决,自己前面看项目代码的过程中,发现Oracle数据库连接的方式有两种,自己现在使用的是jdbc:oracle:thin:@localhost:1521:test,于是我自己怀疑是不是这种连接设置导致了这个错误。
在网上设置Oracle数据库连接的时候,有人是这样设置的:jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xmjj03)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=xmjj04)(PORT=1521))(LOAD_BALANCE=yes))(CONNECT_DATA=(SERVICE_NAME=waynet))),(后来百度得知是Oracle RAC模式)我将其设置放到自己的代码中,发现问题解决。
但是在后面完成工作后,我用将数据库连接改为jdbc:oracle:thin:@localhost:1521:test,what?这种设置方式现在也没有问题了,这个到底是什么问题,后期有思路在来更新。