oracle19C设置兼容低版本客户端

由于oracle11G 官方不在维护,现在很多客户都把数据库升级到oracle19C,新项目也是使用oracle19C数据库居多,默认情况下Oracle 8,Oracle 8i,Oracle 9i,Oracle 10g,Oracle 11g等 oracle数据库客户端是无法访问19C的,低版本客户端登录会提示协议不匹配之类。可以通过修改oracle19C数据库服务器的配置使这些低版本客户端不用升级情况下可以连接oralce19C。
我还是推荐客户端升级,比如安装oracle19C client之类,java也有oracle19C的jar,但是项目上历史遗留问题,不配置的话目前项目上常用的plsql9+oracle10g客户端组合无法连接19C,需要安装plsq11+oracle19C客户端组合,特别是PB程序基本配置的oracle9i,10G客户端,不好升级,所以记录下设置方法,方便项目上翻出来使用。

配置方法

首先需要找到sqlnet.ora文件的路径

查找方法1 tnsping 127.0.0.1:1521

在这里插入图片描述

查找方法2,执行echo $ORACLE_HOME指令得到oracle安装目录

在这里插入图片描述

在一级一级找下去,默认都是在network/admin/下

查找方法3 ,lsnrctl status指令查找到listener.ora的路径,和sqlnet.ora都在一个目录下

lsnrctl status

​​​​​​在这里插入图片描述

​​

修改sqlnet.ora内容如下
如果已有sqlnet.ora文件直接把原文件备份,然后只配置下面内容即可,之前的内容不用保留, 如果没有sqlnet.ora文件,新建一个sqlnet.ora文件把下面内容复制上去即可

SQLNET.ALLOWED_LOGON_VERSION_SERVER 参数设置在连接到 Oracle 数据库实例时允许的最低身份验证协议
SQLNET.ALLOWED_LOGON_VERSION_CLIENT 参数设置对于客户端允许的以及在服务器充当客户端时和连接到 Oracle 数据库实例时允许的最低身份验证协议。

SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

添加参数后新无需重启数据库或者监听,但是已有用户需要修改用户密码,否则登录会报错用户名或密码错误

可以在服务器用sqlplus / as sysdba 登录 修改其他用户密码

修改 system密码

用sqlplus / as sysdba登录

ALTER USER system IDENTIFIED BY xxxxx;

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐