使用navicat连接oracle数据库遇到问题及解决方法

使用navicat连接oracle数据库遇到问题及解决方法

在服务器上安装好oracle之后,在公司要求研究数据迁移,一直看命令行不太舒服,就想着用自己电脑上的navicat连接上服务器上的Oracle,结果遇到了一些问题,现在记录下来,方便查阅,也供大家参考。

1.ORA-12541:TNS :no listener

解决方法:开启监听 :lsnrctl start (stop/status) --开启,关闭,查看状态

温馨提示:使用sqlplus / as sysdba 进入oracle数据库时,会提示你输入用户名和密码,可能是因为你没有切换到oracle用户

使用navicat连接oracle数据库遇到问题及解决方法_第1张图片

2.ORA-12514:TNS:listener does not currently know of service requested in connect descriptor

1.查看你的tnsnames.ora文件(放在你的oracle安装目录里,比如我的是 /ora/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora,如果实在不想打的话,使用find / -name tnsnames.ora也可以找到)以及服务名是否能对应上

使用navicat连接oracle数据库遇到问题及解决方法_第2张图片

使用navicat连接oracle数据库遇到问题及解决方法_第3张图片

2.检查确认数据库实例是否启动 select status from v$instance

我这里是报错了

使用navicat连接oracle数据库遇到问题及解决方法_第4张图片

如果成功,会显示success

使用navicat连接oracle数据库遇到问题及解决方法_第5张图片

上图报ORA-01034错误,显示oracle不可用,就是没有开启实例

,可通过以下几步开启。

(1)sqlplus /nolog

(2)conn / as sysdba

(3) startup

使用navicat连接oracle数据库遇到问题及解决方法_第6张图片

开启后重新测试测试一下,select status from v$instance,显示打开,navicat再测试连接一下,成功就可以了

3.ORA-03135: connection lost contact

按照经验,由于我是远程连接oracle,需要服务器上的防火墙开放端口1521,我觉得可能是防火墙端口没开,查看一下防火墙开放的端口(iptables -L -n)

使用navicat连接oracle数据库遇到问题及解决方法_第7张图片

我执行了以下几步开启了端口

(1)编辑iptables文件:vim /etc/sysconfig/iptables

(2)添加开放端口配置

使用navicat连接oracle数据库遇到问题及解决方法_第8张图片

(3)重启一下防火墙:systemctl restart iptables

(4)重新查看一下端口开放情况

使用navicat连接oracle数据库遇到问题及解决方法_第9张图片

 

(两个选择一个开放,我就是两个都写了结果冲突还是什么原因)

4.ORA-28547:connection to server failed, probable Oracle Net admin error

使用navicat连接oracle数据库遇到问题及解决方法_第10张图片

或者你打开navicat时连接oracle,显示“oracle library is not loaded”,可通过以下方法解决:

(1)https://www.oracle.com/database/technologies/instant-client/downloads.html

(2)下载跟你oracle版本对应的,像我是64bit的就下载x64的 

使用navicat连接oracle数据库遇到问题及解决方法_第11张图片

(3)进去之后可能有很多版本,我下载的是18.5.0.0.0的,这个关系不大,要求登录就注册个账号就好了

(4)下载好之后解压

使用navicat连接oracle数据库遇到问题及解决方法_第12张图片

(5)按照图片更改oci的路径即可 

使用navicat连接oracle数据库遇到问题及解决方法_第13张图片

(6)成功连接

使用navicat连接oracle数据库遇到问题及解决方法_第14张图片

你可能感兴趣的:(使用navicat连接oracle数据库遇到问题及解决方法)