使用navicat连接oracle数据库遇到问题及解决方法
在服务器上安装好oracle之后,在公司要求研究数据迁移,一直看命令行不太舒服,就想着用自己电脑上的navicat连接上服务器上的Oracle,结果遇到了一些问题,现在记录下来,方便查阅,也供大家参考。
1.ORA-12541:TNS :no listener
解决方法:开启监听 :lsnrctl start (stop/status) —开启,关闭,查看状态
(温馨提示:使用sqlplus / as sysdba 进入oracle数据库时,会提示你输入用户名和密码,可能是因为你没有切换到oracle用户)
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也可以找到)以及服务名是否能对应上
如果还是显示上述错误,有可能是你在之后改过主机名,导致不一致,解决的方法如下:
- 使用Oracle身份进入sql界面`sqlplus / as sysdba`
- 执行`show parameter names`,显示的service_names对应的values就是navicat对应的服务名了。
2.检查确认数据库实例是否启动 select status from v$instance
我这里是报错了
如果成功,会显示success
上图报ORA-01034错误,显示oracle不可用,就是没有开启实例
,可通过以下几步开启。
(1)sqlplus /nolog
(2)conn / as sysdba
(3) startup
开启后重新测试测试一下,select status from v$instance,显示打开,navicat再测试连接一下,成功就可以了
3.ORA-03135: connection lost contact
按照经验,由于我是远程连接oracle,需要服务器上的防火墙开放端口1521,我觉得可能是防火墙端口没开,查看一下防火墙开放的端口(iptables -L -n)
我执行了以下几步开启了端口
(1)编辑iptables文件:vim /etc/sysconfig/iptables
(2)添加开放端口配置
(3)重启一下防火墙:systemctl restart iptables
(4)重新查看一下端口开放情况
(两个选择一个开放,我就是两个都写了结果冲突还是什么原因)
4.ORA-28547:connection to server failed, probable Oracle Net admin error
或者你打开navicat时连接oracle,显示“oracle library is not loaded”,可通过以下方法解决:
(1)https://www.oracle.com/database/technologies/instant-client/downloads.html
(2)下载跟你oracle版本对应的,像我是64bit的就下载x64的
(3)进去之后可能有很多版本,我下载的是18.5.0.0.0的,这个关系不大,要求登录就注册个账号就好了
(4)下载好之后解压
(5)按照图片更改oci的路径即可
(6)成功连接
2021.02.01 用管理角色连接oracle
如果使用的之前的连接,进行编辑之后再连接的话,会显示the connection is being used.
解决方法:重新开启一个新的连接,再填写上列信息即可。
ORA-01017 invalid username/password; login denied
解决方法:
- 切换到oracle用户
- 执行`sqlplus / as sysdba`进入管理员
- `alter user 你的用户名 identified by “新的密码”;`
oracle library is not loaded
1.前往“http://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html”
2.选择与自己系统匹配的“Instant Client”。
我的是64位的软件,所以我选择第一个“Instant Client for Microsoft Windows(x64)”,如果你的软件是32位的 ,就选择第二个。
3.按照图示选择“Accept License Agreement”,然后“ instantclient-basic-windows.x64-x.x.x.x.zip”。这里的”x.x.x.x”是版本号,这个不重要,理论上任何版本都行的。注意,这时候需要你登录Oracle账号,没有可以直接注册个,不麻烦。
4. 登录下载
5.下载好压缩包后解压,并将解压后的目录放在一个没有中文字符的路径之下,这样做是为了防止程序出错。我把它放在了:”D:ORACLE”目录下了。
6.打开Navicat Premium程序,打开“工具 – 选项 – 环境 – OCI环境 – OCI library (oci.dll)”,然后将你刚才下载的文件夹中的oci.dll文件的完整目录填上,确定。
Navicat Premium 11.2.17激活
7.重启Navicat Premium程序进行测试双击oracle数据库,发现现在可以连接了,完成。
今天的文章
Navicat Premium 11.2.17激活(使用navicat连接oracle数据库遇到问题及解决方法)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/120566.html