症狀
假設您建立 Oracle 資料庫 12.2 或更新版本的外部資料來源。 當您嘗試在 SQL Server 2019 中針對該資料來源建立外部資料表時,可能會收到下列錯誤:
Msg 105082, Level 16, State 1, Line Number, Msg , Level 16, State 1, Line Number
105082;一般 ODBC 錯誤: [Microsoft][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: 沒有相符的驗證通訊協定 其他錯誤 <2>: ErrorMsg: [Microsoft][ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: 沒有相符的驗證通訊協定, SqlState: HY000, NativeError: 28040。
原因
發生此問題的原因是 SQL Server 2019 並未使用最新的 ODBC 驅動程式版本來連線至 Oracle 資料庫,且目前的驅動程式並未設定新的安全性機制。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
解決方式
此修正程式包含於下列 SQL Server 累積更新中:
關於 SQL Server 的累積更新:
SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:
因應措施
若要解決此問題,您可以編輯 Oracle 伺服器上的 sqlnet.ora 檔案,以新增下列內容:
sqlnet.allowed_logon_version_server=8
參考資料
了解 Microsoft 用來說明軟體更新的術語。
第三方資訊免責聲明本文討論的第三方產品是由不受 Microsoft 干涉或制約的公司所製造。 Microsoft 對該產品的效能或可靠性不負任何暗示或其他形式的擔保責任。