连接12cR2 PDB报错ORA-28040/ORA-01017
测试环境安装了一套12cR2的数据库,想要通过PL/SQL developer连接上数据库,但是报错 ORA-28040: No matching authentication protocol 上网查了原因:Oracle 12c的参数SQLNET.ALLOWED_LOGON_VERSION默认等于11。当我们使用11g JDBC之前版本的thin驱动连接的时候,就会报错。 于是按网上的方法解决方法来做: 在数据库服务器上的oracle/network/admin/sqlnet.ora文件添加一行SQLNET.ALLOWED_LOGON_VERSION=8 修改之后再次连接却又报错ORA-01017:invalid username/password; logon denied 确认用户名和密码是没问题的,但就是连接不上,在服务器端就可以连接 [oracle@t13s~]$sqlpluspdbadmin@pdb1 SQL*Plus:Release12.2.0.1.0ProductiononFriMar1710:25:222017 Copyright(c)1982,2016,Oracle.Allrightsreserved. Enterpassword: LastSuccessfullogintime:ThuMar16201720:28:26+08:00 Connectedto: OracleDatabase12cEnterpriseEditionRelease12.2.0.1.0-64bitProduction PDBADMIN@pdb1> 于是在MOS上搜索相关文档,查到这样一篇文章Client / Server Interoperability Support Matrix for Different Oracle Versions (文档 ID 207303.1) 从文章中可以看出只有11.2.0.3及以上的版本的客户端才能连接12.2版本的服务端。再检查本地的Oracle客户端的版本是11.2.0.1,原来是客户端版本太低了,安装12.1版本的客户端,顺利登录。 MOS文章大致内容如下: |