如何解决Oracle12c连接报错的问题

这篇文章将为大家详细讲解有关如何解决Oracle12c连接报错的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

成都创新互联-云计算及IDC服务提供商,涵盖公有云、IDC机房租用、成都移动机房托管、等保安全、私有云建设等企业级互联网基础服务,来电联系:18982081108

这段时间因为项目原因,接触到了Oracle12C,其实问题很简单,就是pl/sql developer能够访问数据库服务端即可,却碰到了奇奇葩葩的问题,现分享一下。

1、在java端报Ora-12505错误,即TNS:listener does not currently know of SID given in connect descripter。

注:找数据库管理员,数据库管理告知给的是数据库服务名称,改完以后,暂时不报该错误。

2、在pl/sql developer客户端报Ora-01017错误,即提升invalid username/password.logon denied.

注:找数据库管理员帮忙查看,在他的客户端登陆没问题,但在这边的客户端登陆还是有问题

3、通过网上查证原因,为何不能登陆问题,原因是Oracle低版本访问Oracle12c服务器存在兼容性问题,但因数据库服务器不在本地维护,且不能擅自变更配置或重启,只能考虑客户端的解决方案。

3.1 注:在cmd里先找到安装程序的位置再执行命令

setup.exe -ignorePrereq -J"-Doracle.install.client.validate.clientSupportedOSCheck=false"

3.2修改sqlnet.ora

1) 在服务器环境,修改sqlnet.ora,添加以下两行:

SQLNET.ALLOWED_LOGON_VERSION_SERVER=10

SQLNET.ALLOWED_LOGON_VERSION_SERVER=10

其中的数字代表了可允许连接的最小版本号。

2) 重启监听服务:lsnrctl restart

3.3对Oracle新增用户进行密码变更,使得兼容性生效。

ALTER USER username IDENTIFIED BY password;

select username,account_status,default_tablespace,created,password_versions from dba_users;

3.4创建c##用户,create user c##test identified by test;

其中3.1没什么效果,3.2因无法检查数据库环境,3.3修改了密码验证还是没什么用处,3.4方案dba不肯做

4、死胡同里的一条路,变更Oracle客户端版本

通过网上搜索,找到了客户端和服务端的一张兼容表,大意就是只有11.2.0.3及以上的版本才能支持访问Oracle12c的相关版本。

关于客户端到服务器端相互之间的兼容性如下表

如何解决Oracle12c连接报错的问题

如何解决Oracle12c连接报错的问题

5、安装Oracle12c新客户端,又报INS-30131错误,即

Initial setup requierd for the execution of installation failed

注,再次查询百度,发现该问题由于之前的Oracle客户端的java版本导致的,删掉重装。

6、OK

关于“如何解决Oracle12c连接报错的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


网站名称:如何解决Oracle12c连接报错的问题
文章出自:http://pwwzsj.com/article/gcgcph.html