数据库管理信息系统,以前都是局域网的pb程序调用Oracle数据读写操作,现在要求搬一台电脑在外网前台结算(还是用以前的程序远程读写数据库)。服务器:Oracle8数据库安装在windows xp下
客户机:Oracle8 1.7.1.9.0客户端+pb应用程序 在windows下防火墙现在已经将192.168.1.3:1521映射到 外网固定ip上, 在外网(非局域网)telnet ip 1521都能通。所以网络没问题。但Oracle数据库连接老提示 
 
正在连接...ORA-12535: TNS: 操作超时
测试未成功。网上搜了下,因为对Oracle不通,有些细节不了解,希望大家能把Oracle客户端的详细配置教给小弟一下,谢谢!现把SQLNET.ORA和listener.ora粘贴出来,希望大家帮忙分析下:(SQLNET.ORA)
# SQLNET.ORA Network Configuration File: d:\oracle\ora81\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)(listener.ora)
# LISTENER.ORA Network Configuration File: d:\oracle\ora81\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.LISTENER =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 219.139.75.210)(PORT = 1521))
  )SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = d:\oracle\ora81)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = 219.139.75.210)
      (SID_NAME = ORCL)
    )
  )按照网上所说的,已经注册表做了如下修改:HHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0上新建一个字符串值:USE_SHARED_SOCKET=true问题依旧,先已如热锅的蚂蚁,急求办法解决,不胜感激!!!

解决方案 »

  1.   

    color=#FF0000]希望有经验的大侠可以简明扼要的说出在局域网的pb应用程序数据库读写跟远程有和区别即可。谢谢[/color]
      

  2.   

    修改客户端TNSNAMES.ORA文件里的IP地址到新的,DOS下TNSPING你的本地服务名能通
    防火墙配置需要双向的,有些会不小心配成单向
      

  3.   


    2楼的,TNSNAMES.ORA文件应该没问题的,(ADDRESS = (PROTOCOL = TCP)(HOST = 公网ip)(PORT = 1521))cmd下tnsping 公网ip 得到:
    attempting to contact (ADDRESS=(PROTOCOL=TCP)(HOST=公网ip)(PORT=1521))
    OK(30毫秒)tnsping应该没问题吧?