-
Debezium - Oracle 접속 실패CDC Pipeline 2024. 9. 26. 21:12728x90
데이터 변화 감지(CDC)를 위해 debezium과 oracle(aws rds) 연동 시 oracle DB 접속에 실패하는 에러가 발생했습니다.
1. oracle-connector error
{"error_code":400,"message":"Connector configuration is invalid and contains the following 1 error(s):\nUnable to connect: Failed to resolve Oracle database version}
먼저 oracle-connector로 REST API를 생성할 때 나타난 에러이고,
실행 중이던 kafka connect에 나타난 에러를 보면 다음과 같습니다.
2. kafka connect error
Caused by: java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@test-db.ct.ap-northeast-2.rds.amazonaws.com:1521/ORCL
해당 에러는 oracle에 접속하기 위한 jdbc driver를 찾지 못해서 발생한 오류로 ojdbc8.jar 파일의 경로를 바꿔주어 해결했습니다.
먼저 로컬에서 ojdbc8.jar 파일 다운로드 후, kafka container에 복사해주었습니다.
docker cp ojdbc8.jar kafka:/opt/kafka_2.13-2.8.1/connectors/
=> 기존 plugin.path=/opt/kafka_2.13-2.8.1/connectors에 설정한대로, 해당 플러그인 경로에 복사했습니다.
그러나 계속해서 동일한 에러가 발생했고, debezium 공식문서를 참고한 결과,
# debezium 공식문서 참고
/kafka/libs/ 디렉토리 아래에 다시 파일을 옮겨주었습니다.
mv ojdbc8.jar ../libs/
# oracle-connector 실행 curl -X POST -H "Content-Type: application/json" --data @oracle-config.json http://localhost:8083/connectors
이후 oracle-connector를 재실행 했더니 정상적으로 oracle db 접속에 성공했습니다!
- 이상 오늘의 삽질일기 끄읏🌞
여기저기 삽질도 해보고
날려도 먹으면서
배우는 게
결국 남는거다
- Z.Sabziller