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
如果是类似图片中的信息
关闭DOS,启动你的程序进行测试,应该恢复正常了。
以上就是3中常见的引发The Network Adapter could not establish the connection 异常的原因
文章出处:DIY部落(
http://www.diybl.com/course/3_program/java/javashl/20071126/87790.html
)
异常如下:
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io 异常: The Network Adapter could not establish the connection)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.
Java
:1225)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
Caused by: java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)
主要原因:
1.可能是server.xml文件的DataSource配置出错。
(1).如果用到的是本机上的数据,本地数据源里的部分配置为: username="pcisv62" password="11" url="jdbc:oracle:thin:@localhost:1521:orcl"
(2).如果用到的是服务器上的数据,则数据源里的部分配置为: username="pcisv62" password="11" url="jdbc:oracle:thin:@dbserver:1521:corev6"
(dbserver为服务器的名字,corev6为服务器上Oracle的SID)
2.可能是oracle的tnsnames.ora文件配置出错。
oracle的安装目录E:\oracle\ora92\network\admin下的tnsnames.ora:
本地配置:
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 主机名)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
或服务器配置:
COREV6_DBSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
)
(CONNECT_DATA =
(SID = COREV6)
(SERVER = DEDICATED)
)
)
找到
oracle
数据库安装路径下的listener.log文件,看该文件大小是否达到4G,是的话直接删除,去服务管理器-本地服务器重启
oracle
监听相关服务。正常排查:win+R 输入cmd进入。
昨日在部署公司项目时候,启动tomcat一直报:The
Network
Adapter
could not
es
tabl
ish
the
connection
这个错误,因为以前没有使用
oracle
开发,所以对解决
Oracle
抛出的这个错误还有些疑惑,在网上搜索相关解决问题方法,其时大多数解决方法都是排除方法。一. IP错误或端口错误、防火墙 server client端这种错误我们先不考虑,因为只要认
启动tomcat时报错:
Io
异常
: The
Network
Adapter
could not
es
tabl
ish
the
connection
。
有道词典上的解释是适配器错误,找了半天才发现是数据库的连接地址有问题,我的数据库是装在虚拟机里面的,但我在配置文件中使用的是本地IP地址jdbc:
oracle
:thin:@localhost:1521:ORCL。
我把IP地址改为我的虚拟机IP地址:jdbc:
oracle
:thin:@192.168.80.10:1521:ORCL,就解决了。
遇到这个问题,首
这学期新开了
Oracle
11g 数据库管理的课程,然后第一次实验就要我们自行安装
Oracle
11g 今天周六原本打算花个几分钟安装了然后继续备赛蓝桥杯的,但是出现了网络适配器等等的问题,然后我就各种百度看别人的博客,最后算是成功了(附上成功的图)然后把我看到的一些问题进行总结。
- The
Network
Adapter
could not
es
tabl
ish
the
connection
...
是由于信息有误导致 后台报 The
Network
Adapter
could not
es
tabl
ish
the
connection
第二种 情况
用其他软件或者
oracle
数据库自带的SQL PLUS都能正常...
以下是更改
Oracle
的默认监听端口号的具体步骤,其中,第三步是修改监听文件的端口号,第四步是修改初始化参数local\_listener,这两步是非常关键的。在使用命令行工具连接数据库时,需要使用正确的命令和参数。例如,在使用psql连接Postgr
eS
QL数据库时,需要指定正确的主机名、端口号、数据库名称、用户名和密码等参数。其中,操作系统的安全性依赖于相应的操作系统和管理员的技术水平,因此我们在这里只讨论
Oracle
数据库本身的安全性。如果使用
Oracle
数据库,则需要检查数据库监听器是否已经启动。
查看报错信息:
Registered driver with driverClassName=
oracle
.jdbc.driver.
Oracle
Driver was not found, trying direct inst......
IO
Error: The
Network
Adapter
could not
es
tabl
ish
the
connection
The
Network
Adapter
could not
es
tabl
ish
the
connection
The
Network
Adapter
could not
es
tabl
ish
the
connection
Connection
timed out: connect, socket connect lapse 21004 ms. /10.10.10.3...
数据库已经配置好的情况下,发生了这种错误,连不到数据库服务器,一般最有可能发生的原因是网络配置问题,当数据库服务器的网络IP自动更改后,会导致我们之前配置数据库服务的时候IP更改,网上也查了很多资料,也没有找到可以固定服务器数据库电脑网络IP的办法(当然网线除外,这里我们讨论的是WIFI)。更改掉我们之前旧的IP即可,然后重新启动监听服务就可以恢复正常了。
无法从套接字读取更多的数据;n
es
ted except
io
n is java.sql.SQLRecoverableExcept
io
n: 无法从套接字读取更多的数据]### Cause: java.sql.SQLRecoverableExcept
io
n: 无法从套接字读取更多的数据。以上方法并未验证,在菜单跳转链接后面添加随机数可能会解决以上问题。ava 后台报 无法从套接字读取更多的数据 错误。
Bug: 数据源测试通过,但启动项目时报
IO
的错:The
Network
Adapter
could not
es
tabl
ish
the
connection
IO
出现错误可能得原因如下:
1、系统配置错误
2、设备接口接触不良
3、I/O设备损坏
但这种
异常
一般是数据源有问题:(常见)
1》如果是连接的其他服务器的数据库地址
请先确定其他服务器上的 数据源的服务器是否关闭了,关了记得打开。