1. 程式人生 > >ORA-28040: No matching authentication protocol 解決

ORA-28040: No matching authentication protocol 解決

某客戶現場專案組通過4a連線的資料庫,oracle客戶端版本為9或者10,版本過低過低,而生存庫的版本為12c

故通過客戶端連線時報錯ORA-28040: No matching authentication protocol

使用oerr命令來檢視,在Oracle 11g下:

[[email protected] ~]$ oerr ora 28040

28040, 0000, "No matching authentication protocol"

// *Cause: No acceptible authentication protocol for both client and server

// *Action: Administrator should set SQLNET_ALLOWED_LOGON_VERSION parameter

// on both client and servers to values that matches the minimum

// version supported in the system.

[[email protected] ~]$

12c下:

[email protected]:/oracle/app/oracle> oerr ora 28040

28040, 0000, "No matching authentication protocol"

// *Cause: There was no acceptable authentication protocol for

// either client or server.

// *Action: The administrator should set the values of the

// SQLNET.ALLOWED_LOGON_VERSION_SERVER and

// SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters, on both the

// client and on the server, to values that match the minimum

// version software supported in the system.

// This error is also raised when the client is authenticating to

// a user account which was created without a verifier suitable for

// the client software version. In this situation, that account's

// password must be reset, in order for the required verifier to

對症下藥,可以看到,該引數在11g和12c下的解決方案是不同的。

查詢了一下引數SQLNET.ALLOWED_LOGON_VERSION,發現該引數在12c中以廢棄

而是採用SQLNET.ALLOWED_LOGON_VERSION_CLIENT和SQLNET.ALLOWED_LOGON_VERSION_SERVER代替

值得注意在sqlnet.ora中增加SQLNET.ALLOWED_LOGON_VERSION_CLIENT和SERVER配置,不用重啟資料庫或者監聽,也不用重啟應用。

那麼這兩個引數分別代表什麼意義呢,區別如下:

SQLNET.ALLOWED_LOGON_VERSION_SERVER:控制可以連線到12c資料庫的客戶端版本(client --->orace 12c db )

SQLNET.ALLOWED_LOGON_VERSION_CLIENT:控制12c資料庫可以連到哪些版本的資料庫(orace 12c db --->其它版本的oracle db),例如:控制通過DB LINK可連線到哪些版本的oracle庫。

所以,該案例中主要起作用的是需要配置SQLNET.ALLOWED_LOGON_VERSION_SERVER。

特別需要注意:

(1)如果是RAC,因為RAC是使用grid的監聽器,因此很多人以為是在“/u01/app/12.1.0/grid/network/admin/sqlnet.ora” 加“SQLNET.ALLOWED_LOGON_VERSION_SERVER=8”,其實這是錯的,而是仍然在$ORACLE_HOME/network/admin/sqlnet.ora加“SQLNET.ALLOWED_LOGON_VERSION_SERVER=8” 注意是oracle使用者下的sqlnet.ora修改,不是grid使用者

相關推薦

ORA-28040: No matching authentication protocol 解決

某客戶現場專案組通過4a連線的資料庫,oracle客戶端版本為9或者10,版本過低過低,而生存庫的版本為12c 故通過客戶端連線時報錯ORA-28040: No matching authentica

ORA-28040: No matching authentication protocol

binding before gre com see space match font jdb 使用hibernate+oracle數據庫時報錯,錯誤例如以下: 121 [main] INFO org.hibernate.cfg.Environment - Hibern

oracle12.2.1 坑 ORA-28040: No matching authentication protocol

1.ORA-28040: No matching authentication protocol 解決:在Oracle使用者(不是grid使用者)下,將$ORACLE_HOME/network/admin/sqlnet.ora檔案原來的SQLNET.ALLOWED_LOGON_VERSION=8註釋掉(如果

C# 使用DDTek.Oracle.dll連接數據庫提示ORA-28040: No matching authentication protocol

then 沒有 http log 連接數據庫 cati sqlnet logon 資料 原因: oracle客戶端版本太低,由9i的客戶端連接到12c高版本導致。 解決: 解決:在Oracle用戶下,將$ORACLE_HOME/network/admin/sqlne

plsql developer連線oracle 12.2報錯 ora-28040 No matching authentication protocol

使用plsql連線時,發現報ora-28040 No matching authentication protocol 趕緊查了查MOS,原來在預設情況下Oracle12.2對客戶端版本有限制, 解決方法:升級Oracle客戶端或者修改sqlnet.ora中的以下兩個引數控制:   SQLN

No matching authentication protocol

方案 acl JD 字符 then proto jdbc msdb 配置文件 java 連接oracle數據庫; 之前連接公司的oracle數據庫沒有問題,但客戶提供的是oracle12C版本的,連接就報 :No matching authentication protoc

Client does not support authentication protocol 解決辦法

在smarTTY客戶端(其它客戶端也行)命令列介面進入mysql資料庫 (1)容器中登入mysql,進入mysql>命令列   1、docker exec -it mysql01 bash      //mysql01是mysql容器的別名   2、mysql -

navicat 連線mysql8.0出現Client does not support authentication protocol 解決方法

Client does not support authentication protocol :客戶端不支援認證協議 修改資料庫加密方式: alter user ‘root’@‘localhos

ORA-01950: no privileges on tablespace 解決方法

ORA-01950: no privileges on tablespace 解決辦法 源:http://hi.baidu.com/winlei/item/c23bb81af0568708e65c3601 評: em操作 表空間配額不足 ORACLE使用者建表:ORA-01

Navicat連線MySQLClient does not support authentication protocol 解決方法

問題原因:Navicat連線本地MySQL時候,連線屬性為 localhost+使用者名稱(root),需要在資料庫中配置這種連線屬性對應密碼 1、進入windows系統控制檯 windows+r 輸入 cmd 2、進入本地MySQL mysql -u root -

【已解決】使用Navicat連接MySQL數據庫時報錯Client does not support authentication protocol requested by server; consider upgrading MySQL client

ransient nbsp .com res ctr lis org get nfa 報錯緣由:   起初在驗證一個mybatis的demo時提示“Error querying database”(見下方完整代碼),找了很多方法沒有解決,最後在貼吧找到答案。錯誤原因是安裝m

MySQL——navicat 連接 mysql 出現1251Client does not support authentication protocol requested by server的解決方案

https mysq 技術分享 navi 參考 ide 圖片 生效 出現 前期修改root密碼問題(首次安裝的root密碼是空,直接Enter就行): cmd用管理員身份進入,然後輸入 mysqladmin -u root -p password newpassword

spring配置 no matching editors or conversion strategy found 異常解決方案

spring 配置中遇到該問題,可以通過注入的方式解決,程式碼如下:  <tx:annotation-driven transaction-manager="myTxManager" proxy-target-class="true"/> 總結:Spring注入的是介面,關

navicat 連線 mysql5.7 出現1251Client does not support authentication protocol requested by server的解決方案

1251- Client does not support authentication protocol requested by server; consider upgrading MysQL client 錯誤發生在連線阿里雲上MySQL5.7, 1,阿里雲控制檯

解決Navicat連線MySQL出現1251-Client does not support authentication protocol requested by server;

MySQL 是最流行的關係型資料庫管理系統,在WEB應用方面 MySQL 是最好的RDBMS(Relational Database Management System:關係資料庫管理系統)應用軟體之一。 一:MySQL的安裝 在windows下面,點選mysql下載連結

iOS開發-No matching provisioning profiles found解決方法

                今天真機除錯的時候莫名其妙遇到了這樣的一個問題:This product type must be built using a provisioning profile, however no provisioning profile matching both the ide

解決myeclipse 連線 Mysql 8.0.11 出現1251- Client does not support authentication protocol 錯誤

點選MySQL8.0 command Line Client進入小黑屏將會出現 ->mysql 輸入 alter user'root'@'localhost' identified with mysql_native_password by '新密碼';  再按回車即

Oracle 11g 客戶端連線 12g 服務端,程式啟動報 ORA-28040解決

客戶端:11.1.0 服務端:12.1.0 Java 程式啟動時報錯: org.apache.commons.dbcp.SQLNestedException: Cannot create Poolabl

MYSQL 8.0+ 報錯:Client does not support authentication protocol requested by server 解決方案

前言 之前一直用mac的mysql都沒這個問題,在win上配環境就出了這個問題,網上查出的那個OLD_PASSWORD('新密碼')的方法是根本不行的,原因是根本就沒有這個欄位,大家可以執行下以下命令就清楚了。 mysql> show variable

Mysql 連線提示 Client does not support authentication protocol requested by server; consider upgrading MySQL client 解決方法

Mysql 4.1以上的版本在連線資料庫時出現:Client does not support authentication protocol requested by server; consider upgrading MySQL client 按照以下辦法可以得到解決,