运维日记|PLSQL无法连接新装的数据库处理方法 – 作者:database

某日接到客户问题反馈,原来之前为客户搭建的12cR2的数据库,无法通过PLSQL连接,作为一名美创资深DBA,小编心里一惊,莫非之前装的软件有问题。

ORA-28040

为了解决客户问题,赶紧远程连接到客户的电脑,查看原因!

image.png

噢,原来是ORA-28040这个老伙计,因为当windows本地的客户端是10G,而数据库的版本是12c,版本不统的时候,它就要出来冒泡了。

既然知道了是何方神圣,那就可以对症下药,这里在下有两招法宝,提供给在座的各位:


方法一

在甲方windows本地安装一个最简化的11g或者12c客户端:instantclient-basic-nt-11.2.0.2.0.zip,解压好之后,将之前客户端的tnsname.ora文件cp到解压的目录。

前往windows下的环境变量添加以下环境变量。

1.ORACLE_HOME

ORACLE_HOME = C:\instantclient_11_2 (解压目录)

2.TNS_ADMIN(tnsname.ora存放路径)

C:\instantclient_11_2

3.修改Path变量,在后面添加

C:\instantclient_11_2

之后进入PLSQL 选择tools  选择Preferences,填好以下两行,填写以后apply应用,退出plsql,重新登录即可。

image.png

ORACLE_HOME 为C:\instantclient_11_2

OCI library 为 C:\instantclient_11_2\oci.dll

方法二

前往新库linux环境下,前往network/admin下编辑sqlnet.ora添加一下内容

SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

SQLNET.ALLOWED_LOGON_VERSION_SERVER=8

重启数据库即可连接,但是需要注意的是所有用户的密码都需要重置一遍。

第二种的方法更为方便,但是需要重启数据库,以及会导致之前的密码失效。因为此次数据库为新建数据库,暂时还未投入到生产使用,在下采用第二种方法更为方便。

如果是已经投入使用的数据库,还是建议评估以后,再决定采用哪种方法。

终于把这哥们给收拾了!!

看,跟ORA这些伙计们混熟了,是不是就丝毫不慌了!


美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。

来源:freebuf.com 2020-06-05 16:01:13 by: database

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论