本机访问另一台机器的oracle

   本机装一个客户端然后在tnsnames.ora设置了tns别名信息就可以使用sqlplus或者其他工具来访问数据库了。 当然如果你是以mstsc(远程桌面、oracle for windows)或者ssh(oracle for linux、aix、solaris、hp-ux等)的形式来访问数据库所在的操作系统那当然也可以达到目的。

tnsnames.ora位置

$ORACLE_HOME\NETWORK\ADMIN

我的是在这里
C:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora

如下在里面加入Oracle服务器信息
DB =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 服务器地址)(PORT = 端口通常是1521))
   )
   (CONNECT_DATA =
     (SERVICE_NAME = 服务名称)
   )
 )
tnsping yourinstance
看看配置好了没有。

ORACLE 监听可以监听的内容主机名或IP ,当然也可以写localhost 如 host=localhost。host=locahost 时,在本机使用时,访问数据库都是正常的,如sqllplus / as sysdba,使用net 服务名 sqlplussys/system@test as sysdba 也是可以的。但是这样只能被本机来访问。如果另一台机想访问数据库,就会报无监听。在数据库本机使用tnsping 命令 tnsping test 会发现host=127.0.0.1 ,所以只能被本机访问。只要改成本机名或IP,就可以了。这样远程机也能正常访问。

tnsping 172.18.73.249 一开始是ping 不通的,后来把该机器上的杀毒软件全部禁用后,能正常使用;

还连不上一个是你朋友端的oracle客户端没有安装或配置正确
另一个可能是因为你的机子安装的防火墙,如天网、瑞星、微软自带的,可以到朋友的电脑上通过
telnet 你的IP 1521
看看是否能连接上,如果能就是第一种情况了

附:tnsping命令解析
http://www.cnblogs.com/Tony-Mu/articles/2325520.html


你可能感兴趣的:(本机访问另一台机器的oracle)