zoukankan      html  css  js  c++  java
  • Io 异常: The Network Adapter could not establish the connection

      新接触一个项目,导入源码,在本地启动的时候后台报了一个错误:

    Could not discover the dialect to use. java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
        at java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
        at     at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
        at     at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
        at     at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
        at     at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
        at     at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:439)
        at     at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
        at     at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
        at     at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
        at     at java.sql.DriverManager.getConnection(DriverManager.java:582)
        at     at java.sql.DriverManager.getConnection(DriverManager.java:185)
        at     at ch.qos.logback.core.db.DriverManagerConnectionSource.getConnection(DriverManagerConnectionSource.java:54)
        at     at ch.qos.logback.core.db.ConnectionSourceBase.discoverConnnectionProperties(ConnectionSourceBase.java:47)
        at     at ch.qos.logback.core.db.DriverManagerConnectionSource.start(DriverManagerConnectionSource.java:38)
        at     at ch.qos.logback.core.joran.action.NestedComplexPropertyIA.end(NestedComplexPropertyIA.java:168)
        at     at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:315)
        at     at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:194)
        at     at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:180)
        at     at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:52)
        at     at ch.qos.logback.core.joran.spi.Interpreter.play(Interpreter.java:332)
        at     at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:126)
        at     at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:93)
        at     at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:52)
        at     at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:60)
        at     at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:121)
        at     at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:85)
        at     at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
        at     at org.slf4j.LoggerFactory.bind(LoggerFactory.java:121)
        at     at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
        at     at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268)
        at     at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241)
        at     at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:156)
        at     at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:132)
        at     at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:272)
        at     at org.mule.context.DefaultMuleContextFactory.<clinit>(DefaultMuleContextFactory.java:36)

      首先想到的是是不是数据配置有问题,找到配置数据库的文件,先检查服务器IP是否正确,ping一下服务器IP地址,看是否正确,在dos页面输入如下指令:

    ping 服务器IP

      得到的结果如下:

        

      请求超时,意识到这可能是生产环境的数据,在本地启动没有操作权限,需要更改为测试环境的数据库启动。

      如若没有找到问题所在,后续的分析方法:

        1.判断端口号是否正确,在一般不会有错误,但可能使用多个oracle版本,导致端口号不为1521的情况。

         进行一下操作:在DOS上键入sqlplus,检查oracle是否开启,若一切正常,问题仍没有解决,进行下一步。

        2.检查目标机器是否装有防火墙,可能是服务器端口号屏蔽而造成的,关闭防火墙后,尝试重新连接。仍未解决,进行下一步。

        3.检查数据库监听是否启动:下面以现在主流的数据库ORACLE为例:

         重新手动启动数据库监听: 开始 → 运行→ 输入CMD→ 进入DOS命令提示界面 d:>lsnrctl LSNRCTL> status 或者  LSNRCTL> start 

        注:可能服务器上有多个监听,默认lsnrctl start启动的是 LISTENER这个监听, 查看其他监听可以搜索listener.ora这个文件。

         看看是否有其他的监听,如果有,使用lsnrctl start 监听名字。

    # listener.ora Network Configuration File: D:appAdministratorproduct11.2.0dbhome_1
    etworkadminlistener.ora
    # Generated by Oracle configuration tools.
    
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME=RS)
          (SID_NAME = RS)
          (ORACLE_HOME = D:appAdministratorproduct11.2.0dbhome_1)
          (ENVS = "EXTPROC_DLLS=ONLY:D:appAdministratorproduct11.2.0dbhome_1inoraclr11.dll")
        )
      )
    
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.12)(PORT = 1521))
        )
      )
    
    ADR_BASE_LISTENER = D:appAdministrator
  • 相关阅读:
    Repeater OnItemCommand 失效
    继承类时的 this 和 base
    想当然造成的的错误
    排序算法二叉树
    href 一个正则表达式的解析 ? 号解析
    给父窗口添加新的代码
    ValidationSummary 控件
    交叉表 学习
    定向思维 C# datediff
    cookie 问题
  • 原文地址:https://www.cnblogs.com/fx-blog/p/7325299.html
Copyright © 2011-2022 走看看