无法连接到使用SQL Developer,SQL * Oracle数据库加上做工精细

问题描述:

当我打电话net start OracleServiceORCL Windows命令行中,我得到无法连接到使用SQL Developer,SQL * Oracle数据库加上做工精细

The requested service has already been started.

当我再在命令行中运行sqlplus我可以登录到我的数据库成功。

但是使用SQL Developer来使用相同的凭据连接到数据库的时候,我发现了错误

I/O error: The network adapter could not establish the connection.

Vendor code: 17002

同样的错误发生时,我开始连接到数据库我的应用程序服务器。

我已经能够使用SQL开发人员或启动我的服务器,但不知道自那以后发生了什么变化。我怎样才能使它重新工作?

+0

需要研究的部分内容包括:端口连接,服务名称连接。因为12c使用服务名称来连接到PDB而不是服务ID。 – learningloop

这可能有很多原因。你可以开始检查你的监听器状态。检查Oracle侦听器是否正在为您的数据库运行。即使监听器停止,sqlplus也可以连接到数据库,但我不确定它是如何实现的。但是,如果侦听器没有运行,它将禁用像sqldeveloper这样的客户端,即使它在同一台机器上查找数据库。

> lsnrctl services 

你使用什么样的连接? Oracle客户端可以通过TCP或遗留连接使用两种类型的连接。

在数据库正在运行的同一主机上使用sqlplus时,通常会执行sqlplus/as sysdba这将使用bequeauth创建连接。 Bequeauth完全绕过监听器,直接产生一个处理请求到数据库的子进程。

如果您使用像这样的sqlplus sqlplus [email protected]您正在使用TCP通过侦听器进行连接,该侦听器处理与数据库通信的连接和派生进程。

甲骨文通过1521端口默认运行监听器,所以如果侦听器正在运行我的第一个猜测是,防火墙阻止访问1521

你应该尝试连接使用第一bequeatuh然后通过监听器,DB,如果bequeauth工程和TCP连接并不是问题可能在监听者和网络之间的某处。 (您也可以设置的SQLDeveloper使用bequeauth,但它必须在同一主机DB上安装)

可以使用lsnrctl status如果一切似乎很动听那里检查下监听器日志列出的文件文件看到检查侦听器的状态如果有任何连接正在通过监听器进行,或者存在任何错误。