我的oracle数据库服务器的ip地址是10.141.165.*,但是对外映射的ip地址是10.37...,现在我发现局域网内不通过防火墙控制的用户访问10.141.165.*这个ip能连上数据库,但是通过防火墙控制的外面的用户访问10.37...这个ip地址时却提示:Microsoft VBScript 编译器错误 错误 '800a03f6' 缺少 'End' /iisHelp/common/500-100.asp,行242 OraOLEDB 错误 '80004005' ORA-12541: TNS: 没有监听器 /open3000/dljxt.asp,行15我试过把tnsnames.ora和listener.ora里的host=改成localhost或127.0.0.1或者直接写成10.37...这个ip地址,外面的用户还是连接不上,实在搞不懂是什么原因,请高手帮帮忙,好几天了都没解决这个问题

解决方案 »

  1.   

    防火墙的原因吧,oracle的端口有没有开
      

  2.   

    我在asp中是通过ado的方式连接,连接字符串是dns="Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=dmis;Password=hyserver;Data Source=dmis239"
      

  3.   

    透过防火墙连接数据库需要配置下sqlnet.ora文件这个问题只会在WIN平台出现,UNIX平台会自动解决。
    解决方法:
      在服务器端的SQLNET.ORA应类似
      SQLNET.AUTHENTICATION_SERVICES= (NTS) 
      NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME) 
      TRACE_LEVEL_CLIENT = 16 
      注册表的HOME0加[HKEY_LOCAL_MACHINE] 
      USE_SHARED_SOCKET=TRUE
      

  4.   

    我以前也遇到过,没有解决了,我就把那台服务器的操作系统改成LINUX的了,结果问题就解决了。
      

  5.   

    我以前也遇到过,没有解决了,我就把那台服务器的操作系统改成LINUX的了,结果问题就解决了。
    ==============================
    那是因为linux会自动解决这个问题(透过防火墙连接数据库)。
      

  6.   

    to fjmingyang(努力升级):呵呵,可以改服务器的操作系统,这个办法是个好办法,学习了
      

  7.   

    用XP的的话,打开点 网上邻居》属性》高级 把放火墙关了。这是xp sp2的功能。
      

  8.   

    放火墙的错误是: 操作超时。
    没有 没有监听器 ,可能是oracle的lisner没有打开。>lsnrctl<enter>
    >start<enter>打开lisner.注册一个本地命名。用net8 manager工具注册,然后Save.