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 값을 지원하므로(예: 기원전 세기, min/sec>59 등), 이로 인해 오류가 발생하게 됩니다.
권장 사항:
Oracle의 값이 지원되는 날짜 범위 안에 있는지 확인하려면
select dump(<column name>)
을 실행합니다.결과에서 바이트 시퀀스를 확인하려면 How are dates stored in Oracle?(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 Advanced Security) 암호화에 사용되는 다음 알고리즘을 추가해야 합니다.
- 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에서는 SSL 프로토콜 버전이 사용되지 않으므로 TLS 1.0 이상을 사용해야 합니다. 예를 들어 서버는 TLS 1.0까지 TLS 프로토콜 버전과의 연결을 허용할 수 있습니다.
권장 사항: 더 강력한 TLS 버전을 사용하도록 서버 구성을 수정합니다.
메시지:
SSL Handshake Failure reason [error:0A00014D:SSL routines::legacy sigalg disallowed or unsupported].
원인: CryptoProtocolVersion이 OpenSSL 3.0에서 사용되지 않는 TLS 프로토콜 버전을 사용하도록 설정되었습니다.
권장 사항: 연결 문자열 속성
CryptoProtocolVersion=TLSv1.2
를 지정합니다.
관련 콘텐츠
자세한 문제 해결 도움말은 다음 리소스를 참조하세요.