일반 JDBC 연결

일반 JDBC 연결을 사용하여 Cloud Pak for Data에 대해 정의된 연결이 없는 데이터 소스에 연결하십시오.

일관된 방식으로 데이터 소스의 여러 인스턴스에 연결하려는 경우 Cloud Pak for Data 관리자가 데이터 소스에 대한 사용자 정의 JDBC 커넥터 를 작성할 수 있습니다. 커넥터를 작성하는 관리자가 정의한 이름, 세부사항 및 특성이 있는 새 연결 페이지에서 연결을 사용할 수 있습니다.

지원되는 JDBC 버전

JDBC JAR 파일은 JDK 8, JDBC 버전 4.2 또는 이전 버전과 호환 가능해야 합니다.

전제조건

  • Cloud Pak for Data common core services 를 설치해야 합니다. common core services 는 서비스에 의존하는 서비스에 의해 자동으로 설치됩니다. 플랫폼 연결 페이지가 표시되지 않는 경우 이는 사용자 환경에 설치된 서비스가 common core services에 의존하지 않기 때문입니다.

  • 데이터 소스에 대한 JDBC 드라이버(JAR 파일)를 Cloud Pak for Data 에 업로드합니다. JAR 파일을 Cloud Pak for Data 에 업로드하는 절차 및 필요한 권한은 IBM Software Hub 문서에서 JDBC 드라이버 가져오기를 참조하세요. 기본적으로 JDBC 드라이버 파일 업로드는 비활성화되어 있으며 사용자는 웹 클라이언트에서 JDBC 드라이버 목록을 볼 수 없습니다. 관리자는 IBM Software Hub 문서에서 사용자가 JDBC 드라이버를 업로드하거나 볼 수 있도록 허용해야 합니다.

연결 세부사항

중요: 필수 등록 정보, 지원되는 등록 정보 및 지원되는 데이터 유형에 대해서는 드라이버 벤더의 문서를 참조하십시오.

일반 JDBC 연결을 작성하려면 데이터 소스에 대한 다음 정보가 있어야 합니다.

테이블 1. 일반 JDBC 에 대한 연결 세부사항
정보 상태 설명
필수 JAR 파일 필수 데이터 소스에 연결하는 데 필요한 JAR 파일입니다. JDBC 연결에 여러 JAR 파일이 필요한 경우에는 필요한 JAR 파일을 파악해야 합니다.
JDBC 드라이버 클래스 필수 JDBC 드라이버 클래스의 이름입니다. 이 이름은 JDBC 드라이버 제공자가 지정합니다. 세부사항은 JDBC 드라이버 문서를 참조하십시오.
참고: DataStage 흐름에서 일반적인 JDBC 연결을 사용할 경우, 드라이버 구성은 DataStage 서비스 설정을 통해 관리할 수 있습니다. 자세한 내용은 드라이버 관리에 관한 DataStage 문서를 참조하십시오.
JDBC URL 필수 데이터베이스 연결에 사용되는 JDBC URL입니다. URL의 구문에 대한 정보는 JDBC 드라이버 문서를 참조하십시오.
SSL 세부사항 조건부 JDBC ( URL )에서 지정한 포트가 SSL 연결을 수락하도록 구성된 경우, '포트가 SSL 연결을 수락하도록 구성됨'을 선택해야 합니다.

데이터 소스가 체인된 인증서를 사용하는 경우 여러 인증서의 컨텐츠를 지정할 수 있습니다.
자체 서명된 인증서를 ' SSL
인증서' 상자에 붙여넣으면, 해당 인증서는 임시 신뢰 저장소로 가져와져 암호로 보호됩니다. JDBC 특성 상자에 연결 특성을 지정하여 JDBC 연결 URL에서 신뢰 저장소 및 비밀번호를 참조해야 합니다.
예:

ssl=true
sslTrustStoreLocation=${truststore_file}
sslTrustStorePassword=${truststore_password}
일괄처리 크기 선택적 데이터베이스에 전송할 최대 행 수입니다. 기본값은 2000입니다.
페치 크기 선택적 각 호출에 대해 데이터베이스에서 페치할 최대 행 수입니다. 기본값은 2000입니다.
커넥터가 카탈로그 구조를 사용함 선택적 일부 데이터 소스는 데이터를 구조화하기 위해 스키마 대신 카탈로그를 사용합니다. 드라이버 공급업체의 설명서를 참조하여 데이터베이스가 카탈로그 구조를 사용하는지 확인한 후 이 옵션을 선택하십시오.
대소문자 구분 조건부 데이터베이스의 ID가 대소문자를 구분하는 경우 이 데이터베이스의 ID값이 대소문자를 구분하는지 여부 표시를 선택하십시오.
JDBC 특성 선택적 데이터베이스에 연결하는 데 사용할 JDBC 특성입니다. 다음 형식으로 특성을 지정하십시오.

key1=value1;key2=value2;key3=value3

지원되는 특성에 대한 정보는 JDBC 드라이버 문서를 참조하십시오.
행 제한 지원 선택적 드라이버가 SELECT 문에서 행 제한을 지원하는지 여부를 표시합니다. 없음, 접두사 또는 접미사를 지정할 수 있습니다.
중요: 옵션을 그대로 두거나 없음으로 지정하면 애플리케이션에 작은 샘플만 필요한 경우에도 데이터베이스 인터페이스가 소스 테이블의 모든 행을 선택합니다. 예상보다 많은 시간과 메모리가 필요할 수 있습니다.
소스 데이터베이스 시스템이 SQL 쿼리에서 행 제한을 지원하는 경우 적절한 SQL 구문을 지정하는 것이 좋습니다.
행 제한 접두부 조건부 행 한계 지원을 접두부로 설정하는 경우 SELECT문에서 행 한계를 표시하는 데 사용되는 접두부를 지정하십시오.
행 한계 값을 넣을 위치를 표시하려면 ${row_limit} 를 사용하십시오. 예를 들어

TOP ${row_limit}
중요: {row_limit} 값을 숫자로 수동으로 바꾸지 마세요. 이 값은 SQL 명령의 일부이며 명령을 실행하는 애플리케이션에 의해 삽입됩니다. 해당 필드에 사용되는 SQL 기준은 데이터베이스 언어에 따라 달라질 수 있습니다.
행 제한 접미부 조건부 행 한계 지원을 접미부로 설정하는 경우, SELECT문에서 행 한계를 표시하는 데 사용되는 접미부를 지정하십시오.
행 한계 값을 넣을 위치를 표시하려면 ${row_limit} 를 사용하십시오. 예를 들어

LIMIT ${row_limit} ROWS
중요: {row_limit} 값을 숫자로 수동으로 바꾸지 마세요. 이 값은 SQL 명령의 일부이며 명령을 실행하는 애플리케이션에 의해 삽입됩니다. 해당 필드에 사용되는 SQL 기준은 데이터베이스 언어에 따라 달라질 수 있습니다.

신임 정보인증서의 경우, 저장소가 플랫폼에 대해 구성되고 서비스가 저장소를 지원하는 경우 시크릿을 사용할 수 있습니다. 자세한 정보는 연결에서 저장소의 시크릿 사용을 참조하십시오.

FIPS (Federal Information Processing Standards) 준수

이 연결은 FIPS 지원 클러스터(FIPS 내성)에서 사용할 수 있지만, FIPS 규정을 준수하지는 않습니다. 연결을 테스트하여 연결이 작동하는지 확인하십시오.

예제 JDBC URL

중요: 드라이버 공급업체의 문서에 따라 포함할 추가 특성을 확인하십시오.
Databricks
드라이버: com.simba.spark.jdbc.Driver

jdbc:spark://<DatabricksHost>:443/default;transportMode=http;ssl=1;AuthMech=3; httpPath=<Databricks_compute_resources_URL>;connCatalog=<WKC_catalog>;UID=token; PWD=<password>?EnableArrow=

자세한 내용은 레거시 스파크 드라이버의 연결 URL 구축하기를 참조하세요.


Db2
드라이버: com.ibm.db2.jcc.DB2Driver

jdbc:db2://<Hostname>:<Port>/<DatabaseName>

Microsoft SQL Server
드라이버: com.microsoft.sqlserver.jdbc.SQLServerDriver

Microsoft SQL Server 드라이버는 Windows 인증에 대해 작동합니다. 최신 ' ' SQL Server'용 Microsoft ' JDBC 드라이버 '을 다운로드합니다.

Microsoft SQL Server 드라이버의 필수 특성:

  • server_address
  • authenticationScheme=NTLM
  • integratedSecurity=true

jdbc:sqlserver://<server_address>:<port><\your_instance>;database=<DatabaseName>; authenticationScheme=NTLM;integratedSecurity=true;domain=<your_domain>


MongoDB
드라이버: com.ddtek.jdbc.mongodb.MongoDBDriver 포트 : SSL 활성화됨 선택됨

jdbc:datadirect:mongodb://<MongoDBHost>:<MongoDBPort>;DatabaseName=<DatabaseName>;SchemaMap=/tmp/mongodb.config;EncryptionMethod=SSL;ValidateServerCertificate=false;ReadOnly=false;

MySQL
드라이버: com.mysql.cj.jdbc.Driver

jdbc:mysql://<MySQLHost>:<MySQLPort>/<DatabaseName>?useSSL=false

Oracle
드라이버: oracle.jdbc.OracleDriver

SID 사용:
jdbc:oracle:thin:@<Hostname>:<Port>:<ORACLE_SID>

SERVICE_NAME 사용:
jdbc:oracle:thin:@//<Hostname>:<Port>/<ORACLE_SERVICE_NAME>

SSL 에서 Oracle 데이터베이스에 연결하려면 연결 속성에 인증서를 제공해야 하며, URL 가 인증서를 드라이버로 전달할 수 있도록 다음 코드를 포함해야 합니다:

?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}

SSL 가 Oracle 데이터베이스에 연결하는 예시 형식:

SID 사용:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=<hostname>)(PORT=<port>))(CONNECT_DATA=(SID=<ORACLE_SID>)))?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}

SERVICE_NAME 사용:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=<hostname>)(PORT=<port>))(CONNECT_DATA=(SERVICE_NAME=<ORACLE_SERVICE_NAME>)))?javax.net.ssl.trustStore=${truststore_file}&javax.net.ssl.trustStorePassword=${truststore_password}

자세히 알아보기