我安装了oracle weblogic服务器和couldent配置它,当我试图设置连接时发生了一些错误。
我可以追溯到数据库连接存在一些问题。
我已将它安装在一台lenovo-pc上,使用windows professional x64。
在WEB LOGIC SERVER中:
我已将jdbc名称指定为“cmdemo”,将jndi名称指定为“jdbc / cmdemo”。
我选择了oracle的驱动程序为“(瘦)实例连接:版本:9:0.1及更高版本”。
我在交易选项中选择了支持全局交易选项和一阶段提交。
在连接属性中我给出了数据库名称为“cmdemo”,主机名 - “lenovo-pc”,端口 - “1521”,Db用户名 - “exp”Db密码 - “exp”。
当我尝试“测试配置”时,会提示以下错误消息...
错误讯息: 侦听器拒绝连接时出现以下错误:ORA-12505,TNS:侦听器当前不知道连接描述符中给出的SID
oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:199)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:480)
oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:413)
oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:508)
oracle.jdbc.driver.T4CConnection.(T4CConnection.java:203)
oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:33)
oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:510)
com.bea.console.utils.jdbc.JDBCUtils.testConnection(JDBCUtils.java:705)
com.bea.console.actions.jdbc.datasources.createjdbcdatasource.CreateJDBCDataSource.testConnectionConfiguration(CreateJDBCDataSource.java:458)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870)
org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809)
org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:478)
org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306)
org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336)
...
对此的解决方案将是一个很大的帮助...
的问候,
Syed Hidayat
答案 0 :(得分:0)
查看监听器状态,如果它已关闭请请求dba获取监听器 lsnrctl状态(显示状态) 如果向下使用命令:lsnrctl start(开始)
如果问题仍然存在,则检查侦听器文件是否具有实例条目(如果不存在)。
例如:SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = F:\oracle\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:F:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
(SID_DESC =
(ORACLE_HOME =F:\oracle\product\11.2.0\dbhome_1)
(SID_NAME = example)
)
)
编辑"示例"中的实例名称到您的实例名称并重新启动侦听器。您应该在状态输出中看到实例处于就绪状态。
通过连接userid/pwd@instace_name
进行测试,以检查侦听器是否已启动,并且是否通过服务名称选择了连接。这应该有希望解决你的问题。