SQL Developer 连接 oracle数据库 报错 Io 异常 The Network Adapter could not establish the connection的三种解决方法

简介: SQL Developer 连接 oracle数据库 报错 Io 异常 The Network Adapter could not establish the connection的三种解决方法

报错 Io 异常: The Network Adapter could not establish the connection的三种解决方法


Io 异常: The Network Adapter could not establish the connection

这个异常的出现一般与数据库和你的PC的设置有关


这种异常的出现大致上有下面几种:


1。IP错误。

在设置URL时错误,例如:jdbc:oracle:thin:@192.168.0.36:1521:sharp

数据库服务器不正确:ping 服务器IP是否正确。不正确,将URL更改为正确

端口号错误:一般不会错误。

进行一下操作:在DOS上键入sqlplus,检查oracle是否开启

一却正常,执行下面第2步。


2。防火墙

如果机器上安装有放火墙,可能是服务器端口号屏蔽而造成的。关闭防火墙后,尝试重新连接。

仍然不行,执行第3步。


3。数据库监听未启动 修改PC上注册表中的ImagePath值。

我下面以现在主流的数据库ORACLE为例

重新手动启动数据库监听:

1:开始 → 运行→ 输入CMD→ 进入DOS命令提示界面

d:>lsnrctl

LSNRCTL> status

或者

LSNRCTL> start


以下是手动启动数据库的方法:

在运行处执行regedit进入注册表到

开始 →运行→ regedit

按下面路径

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome90TNSListener

找到OracleOraHome90TNSListener(我用的是Oracle9i 其他的版本的应该是OracleOraHomexxxTNSListener)


找到之后你会发现ImagePath关键值不存在了,创建它:(存在的话,点击修改,修改方法在下文有介绍)

右键单击,弹出菜单选择新键(N)→字符串值(S)


将其命名为ImagePath

选中ImagePath点右键,选中修改:


89.jpg


在值中输入你的Oracle安装目录\ora90(其他版本对应的是oraxxx目录)\bin\tnslsnr



90.jpg


确定后退出注册表:

再在DOS命令下键入start

如果出现下面画面,恭喜你,监听器启动成功:

91.jpg

关闭DOS,启动你的程序进行测试,应该恢复正常了。

以上就是3中常见的引发The Network Adapter could not establish the connection 异常的原因

如果还不能解决:


92.png93.png


监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=JAVA)(PORT=1521)))


监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Admin.JAVA)(PORT=1521)))


Microsoft Windows [版本 10.0.19043.1645]
(c) Microsoft Corporation。保留所有权利。
C:\WINDOWS\system32>lsnrctl
LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 15-4月 -2022 10:10:58
Copyright (c) 1991, 2010, Oracle.  All rights reserved.
欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS: 无监听程序
 TNS-12560: TNS: 协议适配器错误
  TNS-00511: 无监听程序
   64-bit Windows Error: 2: No such file or directory
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Admin.JAVA)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
 TNS-12560: TNS: 协议适配器错误
  TNS-00515: 因目标主机或对象不存在, 连接失败
   64-bit Windows Error: 1001: Unknown error
LSNRCTL> start
启动tnslsnr: 请稍候...
TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
系统参数文件为D:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
写入d:\oracle\diag\tnslsnr\JAVA\listener\alert\log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Admin.JAVA)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
 TNS-12560: TNS: 协议适配器错误
  TNS-00515: 因目标主机或对象不存在, 连接失败
   64-bit Windows Error: 1001: Unknown error
监听程序未能启动。请参阅上面的错误消息...
LSNRCTL> start
启动tnslsnr: 请稍候...
TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
系统参数文件为D:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
写入d:\oracle\diag\tnslsnr\JAVA\listener\alert\log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Admin.JAVA)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
 TNS-12560: TNS: 协议适配器错误
  TNS-00515: 因目标主机或对象不存在, 连接失败
   64-bit Windows Error: 1001: Unknown error
监听程序未能启动。请参阅上面的错误消息...
LSNRCTL> start
启动tnslsnr: 请稍候...
TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
系统参数文件为D:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
写入d:\oracle\diag\tnslsnr\JAVA\listener\alert\log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=JAVA)(PORT=1521)))
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
启动日期                  15-4月 -2022 10:19:36
正常运行时间              0 天 0 小时 0 分 6 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          D:\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
监听程序日志文件          d:\oracle\diag\tnslsnr\JAVA\listener\alert\log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=JAVA)(PORT=1521)))
服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
  实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
LSNRCTL>


S=(PROTOCOL=tcp)(HOST=JAVA)(PORT=1521)))

服务摘要…

服务 “CLRExtProc” 包含 1 个实例。

实例 “CLRExtProc”, 状态 UNKNOWN, 包含此服务的 1 个处理程序…

命令执行成功

LSNRCTL>


检查计算机名称 host  是否配置一致
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
6天前
|
SQL 存储 Oracle
Oracle的PL/SQL定义变量和常量:数据的稳定与灵动
【4月更文挑战第19天】在Oracle PL/SQL中,变量和常量扮演着数据存储的关键角色。变量是可变的“魔术盒”,用于存储程序运行时的动态数据,通过`DECLARE`定义,可在循环和条件判断中体现其灵活性。常量则是不可变的“固定牌”,一旦设定值便保持不变,用`CONSTANT`声明,提供程序稳定性和易维护性。通过 `%TYPE`、`NOT NULL`等特性,可以更高效地管理和控制变量与常量,提升代码质量。善用两者,能优化PL/SQL程序的结构和性能。
|
1月前
|
Oracle 关系型数据库 分布式数据库
PolarDB常见问题之PolarDB(Oracle兼容版) 执行命令报错如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
2天前
|
SQL XML Java
mybatis 调用修改SQL时 出现了一个问题 没有修改成功也没有报错
mybatis 调用修改SQL时 出现了一个问题 没有修改成功也没有报错
12 0
|
6天前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL游标属性:数据的“导航仪”与“仪表盘”
【4月更文挑战第19天】Oracle PL/SQL游标属性如同车辆的导航仪和仪表盘,提供丰富信息和控制。 `%FOUND`和`%NOTFOUND`指示数据读取状态,`%ROWCOUNT`记录处理行数,`%ISOPEN`显示游标状态。还有`%BULK_ROWCOUNT`和`%BULK_EXCEPTIONS`增强处理灵活性。通过实例展示了如何在数据处理中利用这些属性监控和控制流程,提高效率和准确性。掌握游标属性是提升数据处理能力的关键。
|
6天前
|
SQL Oracle 安全
Oracle的PL/SQL循环语句:数据的“旋转木马”与“无限之旅”
【4月更文挑战第19天】Oracle PL/SQL中的循环语句(LOOP、EXIT WHEN、FOR、WHILE)是处理数据的关键工具,用于批量操作、报表生成和复杂业务逻辑。LOOP提供无限循环,可通过EXIT WHEN设定退出条件;FOR循环适用于固定次数迭代,WHILE循环基于条件判断执行。有效使用循环能提高效率,但需注意避免无限循环和优化大数据处理性能。掌握循环语句,将使数据处理更加高效和便捷。
|
6天前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL条件控制:数据的“红绿灯”与“分岔路”
【4月更文挑战第19天】在Oracle PL/SQL中,IF语句与CASE语句扮演着数据流程控制的关键角色。IF语句如红绿灯,依据条件决定程序执行路径;ELSE和ELSIF提供多分支逻辑。CASE语句则是分岔路,按表达式值选择执行路径。这些条件控制语句在数据验证、错误处理和业务逻辑中不可或缺,通过巧妙运用能实现高效程序逻辑,保障数据正确流转,支持企业业务发展。理解并熟练掌握这些语句的使用是成为合格数据管理员的重要一环。
|
6天前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL表达式:数据的魔法公式
【4月更文挑战第19天】探索Oracle PL/SQL表达式,体验数据的魔法公式。表达式结合常量、变量、运算符和函数,用于数据运算与转换。算术运算符处理数值计算,比较运算符执行数据比较,内置函数如TO_CHAR、ROUND和SUBSTR提供多样化操作。条件表达式如CASE和NULLIF实现灵活逻辑判断。广泛应用于SQL查询和PL/SQL程序,助你驾驭数据,揭示其背后的规律与秘密,成为数据魔法师。
|
1月前
|
SQL JSON Kubernetes
Seata常见问题之服务端 error日志没有输出,客户端执行sql报错如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
104 0
|
21天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
23天前
|
存储 关系型数据库 MySQL
数据库字符编码MySQL中使用UTF-8还是UTFB4
数据库字符编码MySQL中使用UTF-8还是UTFB4
20 0

推荐镜像

更多