虚拟机上可以正常访问数据库,但是在物理机上连接数据库时出现“ORA-12170:TNS:连接超时”时,可以用以下思路解决问题。
一、检查网络
1.ping ip地址 查看网络问题,看能否ping通;
2.tnsping ip地址(或者是服务器的实例名SID)如果报“TNS-12535:操作超时“,可能是服务器端防火墙,没有关闭;
3.netstat -na 查看1521端口是否关闭
4.lsnrctl status lsnrctl是listener-control 监听器的缩写,查看监听的状态
如果检查出来是防火墙的问题,则可以关闭防火墙或者修改防火墙规则来解决该问题(目前只遇到访问墙的问题)。
二、防火墙问题
2.1 关闭防火墙
chkconfig iptables off;#重启后失效
/etc/init.d/iptables stop;#立即失效
2.2修改防火墙规则
1)直接打开端口
iptables -I INPUT -p tcp --dport 1521 -j ACCEPT;#1521是端口号;
#如果要删除规则,就使用iptables -D INPUT number;
#number可以用/etc/init.d/iptables status来查看
#使用这种方式,机器重启或者防火墙关闭再打开,该规则失效。
2)永久打开某端口
首先,用vim打开防火墙配置文件:
vim /etc/sysconfig/iptables
然后,在iptables文件内容中,在默认的22端口下一行添加如下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
最后,保存配置文件后,执行如下命令重启防火墙:
/etc/init.d/iptables restart
#经过测试,在/etc/sysconfig/iptables中添加“-A……”这条内容是,在位置1添加语句,重启防火墙后可以连接数据库;在2处添加语句,重启防火墙后仍然是报“ORA-12170:TNS:连接超时”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。