分享方式:


針對 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

如需更多疑難排解的協助,請嘗試下列資源: