針對 Azure Data Factory 和 Azure Synapse 中的 Oracle 連接器進行疑難排解
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用 (部分機器翻譯)!
本文提供針對 Azure Data Factory 和 Azure Synapse 中 Oracle 連接器常見問題進行疑難排解的建議。
錯誤碼:ArgumentOutOfRangeException
訊息:
Hour, Minute, and Second parameters describe an un-representable DateTime.
原因:在 Azure Data Factory 和 Synapse 管線中,支援的 DateTime 值範圍是從 0001-01-01 00:00:00 到 9999-12-31 23:59:59。 不過,Oracle 支援更廣泛範圍的 DateTime 值,例如西元前世紀或分/秒>59,這會導致失敗。
建議:
若要查看 Oracle 中的值是否在支援的日期範圍內,請執行
select dump(<column name>)
。若要了解結果中的位元組序列,請參閱如何將日期儲存在 Oracle 中?。
使用自我裝載整合運行時間 5.36.8726.3 版或更高版本時,新增安全演算法
徵兆:當您使用自我裝載整合運行時間 5.36.8726.3 版或更高版本時,您會遇到此錯誤訊息:
[Oracle]ORA-12650: No common encryption or data integrity algorithm
。原因:安全演算法不會新增至您的 Oracle 伺服器。
建議:更新您的 Oracle 伺服器設定,以在尚未包含這些安全演算法時新增這些演算法:
針對 SQLNET。ENCRYPTION_TYPES_SERVER,必須新增下列演算法,這些演算法被視為 OpenSSL 的安全,並將用於 OAS(Oracle 進階安全性)加密。
- AES256
- AES192
- 3DES168
- AES128
- 3DES112
- DES
針對 SQLNET。CRYPTO_CHECKSUM_TYPES_SERVER,需要新增下列由OpenSSL視為安全的演算法,並將用於OAS (Oracle Advanced Security) 資料完整性。
- SHA256
- SHA384
- SHA512
注意
建議的數據完整性演算法 SHA256、SHA384 和 SHA512 適用於 Oracle 19c 或更高版本。
錯誤碼:UserErrorFailedToConnectOdbcSource
有三個與這個錯誤碼相關聯的錯誤訊息。 檢查每個錯誤訊息的對應原因和建議。
訊息:
"Cannot load trust store", or "SSL Handshake Failure reason [error:OA000086:SSL routines::certificate verify failed]"
原因:
truststore
不適用於 OpenSSL 3.0,因為truststore
檔案是使用 RC4、MD5 和 SHA1 等弱式密碼產生。建議:您必須使用 AES256 之類的強密碼重新建立
truststore
。 如需使用truststore
設定 TLS 連線的詳細資訊,請參閱本節。
訊息:
SSL Handshake Failure reason[Unknown SSL Error]
SSL Handshake Failure reason [error:OA000410:SSL routines::sslv3 alert handshake failure]
原因:伺服器未針對 SSL 通訊設定強式加密。 OpenSSL 3.0 應該使用 TLS 1.0 和更新版本,因為它已取代 SSL 通訊協定版本。 例如,伺服器可能會接受 TLS 通訊協定版本的連線,直到 TLS 1.0 為止。
建議:修改伺服器設定以使用更強的 TLS 版本。
訊息:
SSL Handshake Failure reason [error:0A00014D:SSL routines::legacy sigalg disallowed or unsupported].
原因:CryptoProtocolVersion 設定為搭配 OpenSSL 3.0 使用已被取代的 TLS 通訊協定版本。
建議:指定 連接字串 屬性
CryptoProtocolVersion=TLSv1.2
。
相關內容
如需更多疑難排解的協助,請嘗試下列資源: