环境:32位xp,虚拟机centOS6.0,oracle11g
现象:主机和虚拟机能相互ping通。oracle及客户端都装好,配置好。但是测试数据源时不成功,报TNS-12543: TNS :无法连接到目标主机
在xp系统使用命令行命令tnsping 虚拟机的ip,同样报TNS-12543: TNS :无法连接到目标主机
原因:虚拟机linux系统防火墙阻止(不一定所有情况都是这个原因但是我碰到的是)
解决办法:关闭linux防火墙。注意:这步操作要在root用户下操作。
[root@localhost ~]#service iptables stop
iptables: Flushing firewall rules: [ OK ]
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Unloading modules: [ OK ]
再试一下:
Z:\>tnsping 10.1.129.68
TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 28-11月-
2013 15:35:22
Copyright (c) 1997, 2010, Oracle. All rights reserved.
已使用的参数文件:
D:\app\guolz\product\11.2.0\client_1\network\admin\sqlnet.ora
已使用 EZCONNECT 适配器来解析别名
尝试连接 (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST
=10.1.129.68)(PORT=1521)))
OK (20 毫秒)
成功。
然后,使用Net Configuration assistant测试,出现guolz lacks CREATE SESSION privilege; logon denied
意思是该用户没有session权限,登陆数据库(sqlplus / as sysdba)
grand connect ,resource to guolz;
出现grand succeeded,赋权成功。
再测试一下,测试成功。