windows安装oracle instant client并用navicat连接云服务器上的oracle(一)

        第一部分解决的是连接超时问题,是云服务器上面的一些配置问题

        第二部分正式在windows上安装oracle instant client

一、本人所具有相关的一些环境

远程:

       腾讯云服务器 centos7.5 64位 已安装好oracle11g(oracle安装教程见上一篇博客)

  1. 本地:

       windows10,navicat15

二、安装及连接过程

1、首先看navicat连接oracle需要一些什么信息。

      

      

        新建连接所需信息如上图所示,需要注意的点:

       主机:填写云服务器的公网ip

       服务器名:service name(后面会介绍,连得时候踩的大坑)

       用户名、密码:我使用的是oracle数据库里面的自己创建的用户

2、我尝试接填写信息点击测试连接,会发现报错,显示超时timeout(ORA-12170: TNS:Connect timeout occurred)。如果这样的话,请按以下步骤来一一检查,参考ORA-12170:TNS:连接超时 - 潇湘隐者 - 博客园

(1)检查网络是否能ping通过:

        在windows下打开命令行窗口输入

        ping xx.xx.xx.xx

        ping的是公网地址。说明网络是畅通的。

(2)检查tns配置和监听服务的配置:

        TNS配置:是oracle net的一部分,是用于管理oracle数据库和客户端连接的工具,配置文件名为tnsnames.ora,默认路径是

%ORACLE_HOME%/network/admin/tnsnames.ora

        Listener监听配置:oracle用于配置监听器的文件,配置文件名为listener.ora,默认路径是

%ORACLE_HOME%\network\admin\listener.ora

        配置文件的最基础的内容如图上面两个图所示(分别是tnenames.ora和listener.ora里面的内容)

(3)检查没有问题的话,查看服务器监听服务是否启动:

        有关监听器的操作:

lsnrctl start

        监听器打开

lsnrctl status

        监听器状态

lsnrctl stop

        关闭监听器

        在此处使用lsnrctl status,正常启动了的话会是下面的样子:

        正常启动了的请忽略下面的,直接去下一步

        我在此步遇到的问题,发现监听都无法打开:

Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=VM-0-6-centos)

(PORT=1521)))xxxxx

        查询有关资料发现,好像是因为hostname的原因,是由于/etc/hosts文件引起的错误。

        因为我的云服务器上先安装了oracle,后来为了配置hadoop的结点,改了hostname,但是原来安装oracle的时候也进行过hostname的相关配置,导致两者不统一,于是需要进行修改。

        可以使用hostname命令查看服务器名字,会发现,我的hostname是Datanode2,而在前面查看tns和Listener的配置文件是会发现,那个地方的HOST=VM-0-6-centos,这是有矛盾的。但是我不能把名字改回去,所以,就去查了如何在安装了oracle数据库后修改ORACLE_HOSTNAME。

借鉴: 在linux上安装完oracle数据库后,如何修改ORACLE_HOSTNAME - 酸奶加绿茶 - 博客园 Error listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12545: Connect failed because tar_liuying6629的博客-CSDN博客

       第一步:已经在/etc/hosts修改了名字,如下图中

       第二步:回到root用户,修改

vi /etc/sysconfig/network

,添加如下代码:

       第三步:切换oracle用户,进入到oracle目录下的

cd /ifs/oracle/home/oracle_11g/network/admin

(前面是我的oracle安装路径),发现了tns和listen文件,对其中的内容进行修改。

       改完后如下(只用改名字即可,改的时候不小心删了个括号出去启动又报错了哈哈哈醉了):

        第四步:启动监听

        第五步:查看状态,现在监听启动成功

(4)用tnsping检查(就是检查oracle网络是否可以被接受,如果服务器上都不能接受更不用说别的了),发现 TNS-12535:TNS:operation timed out,超时考虑防火墙

使用

iptables-save

查看开放的端口,发现oracle端口1521并没有打开,于是把它打开

firewall-cmd --zone=public --add-port=1521/tcp –permanent

然后再重载

firewall-cmd –reload

再使用iptables-save查看发现已经打开了

iptables -L -n

也可以看

此时再次使用tnsping命令,发现是ok的:

第一部分到这结束

第二部分安装oracle instant client

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值