现象描述:通过net start OracleServiceOrcl启动服务,再通过lsnrctl start启动监听器,通过sqlplus访问  sqlplus sys/orcl@orcl as sysdba没有问题。
如果通过oracle.exe orcl启动,再通过lsnrctl start启动监听器,通过sqlplus则无法访问  sqlplus sys/orcl@orcl as sysdba长时间无响应,而sqlplus sys/orcl as sysdba没有问题。这是为什么?难道net start OracleServiceOrcl和oracle.exe orcl有区别吗?

解决方案 »

  1.   

    通过oracle.exe orcl启动 服务并没有完全启动起来。
      

  2.   

    oracle.exe并不是启动OracleServiceOrcl服务用的,启动OracleServiceOrcl还有很多是要做。比如根据你的ip地址创建文件夹
      

  3.   

    oracle.exe并不是启动OracleServiceOrcl服务用的,启动OracleServiceOrcl还有很多是要做。比如根据你的ip地址创建文件夹
      

  4.   


    同意,window下的最好用服务来启动了,估计这里是有什么子进程在oracle启动的时候没有加载进来。
      

  5.   

    难道net start OracleServiceOrcl和oracle.exe orcl有区别吗?
    ===============================================================
    有区别的,windows 的 service 的 exe 文件结构与普通的 exe 程序是不一样的。
    oracle.exe orcl 只是将服务进程当做普通的可执行文件 load 进内存,但服务并没有启动。要启动服务是要调用服务程序中的onload(xxx)函数的。net start 可以完成这样的调用,而 oracle.exe orcl 则不能。