새소식

반응형
GCP/BigQuery

Unable to proceed: Could not connect with provided parameters: No suitable driver found for "jdbc:redshift"

  • -
반응형

안녕하세요. 

 

최근에 이직을 하면서 많이 바빠서 글을 쓰지 못하였습니다.

어느정도 정리하고 여유가 생기면서 이번에 발생했던 오류에 대해서 글을 간략하게 쓰려고 합니다. 

 

 

1. 무슨 작업을 하려고 하였는가?

 

현재 재직중인 회사는 Redshift를 사용하고 있으며 이를 BigQeury로 이관하려고 합니다. 그래서 GCP의 BigQuery 기능인 BigQuery Data Transfer를 이용해서 Redshift를 BigQuery 이관 하려고 합니다.

 

https://cloud.google.com/bigquery-transfer/docs/redshift-migration?hl=ko 

 

Amazon Redshift에서 데이터 마이그레이션  |  BigQuery Data Transfer Service  |  Google Cloud

의견 보내기 Amazon Redshift에서 데이터 마이그레이션 개요 이 문서에서는 공개 IP를 통해 Amazon Redshift에서 BigQuery로 데이터를 마이그레이션하는 프로세스를 설명합니다. 비공개 IP 주소의 Virtual Priva

cloud.google.com

 

하지만 모든 세팅을 하였음에도 아래와 같은 오류가 발생 하였습니다. 오류의 내용은 제목과 동일 합니다. 

 

Unable to proceed: Could not connect with provided parameters: No suitable driver found for jdbc:redshift://{Redshift JDBC URL}

 

위와 같이 No suitable driver found for jdbc:redshift: 라고 하여 당연히 JDBC URL이 잘못되었다고 판단 하였습니다. 제가 잘못 된 JDBC URL을 보고 있다고 판단하여, 다시한번 AWS 사이트에서 확인 해봤습니다.

 

https://docs.aws.amazon.com/redshift/latest/mgmt/jdbc20-obtain-url.html

 

Getting the JDBC URL - Amazon Redshift

Getting the JDBC URL Before you can connect to your Amazon Redshift cluster from a SQL client tool, you need to know the JDBC URL of your cluster. The JDBC URL has the following format: jdbc:redshift://endpoint:port/database. The fields of the preceding fo

docs.aws.amazon.com

 

하지만 아무리 문서에 나오는 방법으로 시도해도 똑같은 오류만 반복 되었습니다. 

구글링을 해보았지만 역시나 해답을 찾을순 없었습니다. 그래서 이것저것 해보다가 원인을 찾았습니다. 

 

 

2. 해결 방법

 

현재 출발지인 Redshift의 경우 Private(사설망)에 있습니다.

해당 기능을 사용하기 위해서는 특정 IP주소를 허용 해야 합니다. (리전마다 다름)

 

허용 IP 리스트 일부

 

 

결론적으로 JDBC URL을 찾지 못하는게 아니고 연결 자체가 안되는 현상입니다. 그래서 IP를 허용해주신다면 정상적으로 동작 하는것을 볼 수 있습니다. 관련해서 구글링을 하면 JDBC에 redshift가 아닌 postgresql을 넣으라는 이야기가 많은데요. 아마도 예전에는 postgresql로 하면 연결이 되었던것 같습니다. 혹시 위와 같은 오류가 있다면 네트워크 연결을 의심해 보시기 바랍니다.

 

감사합니다.

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.