Navicat premium连不上Oracle的问题解决

1、ORA-28547:

这是因为oci.dll版本不对。Navicat本地的OCI版本与Oracle服务器服务器不符造成的。



或者



打开Navicat premium客户端:Tool->Options





你会发现OCI library的路径是:
D: avicatNavicat Premiuminstantclient_10_2oci.dll
即Navivat本身的oci.dll,大小为504KB。而安装的Oracle中的oci.dll,大小为642KB。明显两个不一致

解决方法:

(1)将Oracle中的oci.dll文件覆盖Navicat中的oci.dll
(2)将OCI library的路径改为Oracle中oci.dll的路径
即:D:appuserproduct11.2.0dbhome_1BINoci.dll

2、ORA-12514:

TNS 监听程序当前无法识别连接描述符中请求服务,即Service Name/SID中的值填的有问题,默认的是ORCL,这个值如果在安装Oracle的时候填的不是ORCL,那就会出现这个错误



解决方法:

打开Oracle安装路劲中的tnsnames.ora文件
即:D:appuserproduct11.2.0dbhome_1NETWORKADMIN nsnames.ora





Service Name的值为orcl.212.150.104,将Service Name改了即可

3、ORA-12541:



解决方法:

打开Oracle安装路劲中的tnsnames.ora文件
即:D:appuserproduct11.2.0dbhome_1NETWORKADMIN nsnames.ora
查看HOST配置的是什么ip—这个地方需要和Host Name/IP Address保持一致



4、ORA-01017:



因为用户a未创建,需要创建用户后才能连接

解决方法:

打开SQL Plus,连接oracle管理员,输入口令为oracle



创建用户:



授权:



连接用户,输入口令为oracle:



显式当前用户:



5、ORA-28001:



Oracle提示错误消息ORA-28001: the password has expired,是由于Oracle11G的新特性所致, Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录。

查询密码的有效期设置,LIMIT字段是密码有效天数



解决方法一:



直接输入原来的密码和你要修改的密码即可(old password和new password可以一样!!!)

解决方法二:

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED

即:将口令有效期默认值180天修改成了“无限制”。

原文地址:https://www.cnblogs.com/airen123/p/10493854.html