

 Amazon Redshift는 패치 198부터 새 Python UDF 생성을 더 이상 지원하지 않습니다. 기존 Python UDF는 2026년 6월 30일까지 계속 작동합니다. 자세한 내용은 [블로그 게시물](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)을 참조하세요.

# Amazon Redshift에서 연결 구성
<a name="configuring-connections"></a>

다음 섹션에서 SQL 클라이언트 도구에서 클러스터에 연결하도록 JDBC, Python 및 ODBC 연결을 구성하는 방법을 확인해보세요. 이 섹션에서는 JDBC, Python 및 ODBC 연결을 설정하는 방법에 대해 설명합니다. SSL(Secure Sockets Layer) 및 서버 인증서를 사용하여 클라이언트와 서버 간의 통신을 암호화하는 방법에 대해서도 설명합니다.

## Amazon Redshift용 JDBC, Python 및 ODBC 드라이버
<a name="connecting-drivers"></a>

클러스터 데이터를 사용하려면 클라이언트 컴퓨터 또는 인스턴스에서 연결하기 위한 JDBC, Python 또는 ODBC 드라이버가 있어야 합니다. JDBC, Python 또는 ODBC 데이터 액세스 API 작업을 사용할 수 있는 애플리케이션을 코딩하거나, 혹은 JDBC, Python 또는 ODBC를 지원하는 SQL 클라이언트 도구를 사용하세요.

Amazon Redshift를 통해 JDBC, Python 및 ODBC 드라이버를 다운로드할 수 있습니다. 이 드라이버는 지원에서 지원됩니다. PostgreSQL 드라이버는 테스트되지 않았으며 Amazon Redshift 팀에서 지원하지 않습니다. Amazon Redshift 클러스터에 연결할 때 Amazon Redshift 전용 드라이버를 사용하세요. Amazon Redshift 드라이버는 다음과 같은 이점이 있습니다.
+ IAM, SSO 및 페더레이션 인증 지원.
+ 새로운 Amazon Redshift 데이터 유형 지원.
+ 인증 프로파일 지원.
+ Amazon Redshift 개선 사항과 함께 향상된 성능.

 JDBC 및 ODBC 드라이버를 다운로드하여 클러스터 연결을 구성하는 방법에 대한 자세한 내용은 [Amazon Redshift용 JDBC 드라이버 버전 2.x 연결 구성](jdbc20-install.md), [Amazon Redshift Python 커넥터](python-redshift-driver.md) 및 [Amazon Redshift용 ODBC 드라이버 버전 2.x 연결 구성](odbc20-install.md) 섹션을 참조하세요.

IAM 역할에 대한 모범 사례를 비롯한 IAM ID 관리에 대한 자세한 내용은 [Amazon Redshift의 Identity and Access Management](redshift-iam-authentication-access-control.md) 섹션을 참조하세요.

# 클러스터 연결 문자열 찾기
<a name="connecting-connection-string"></a>

SQL 클라이언트 도구를 사용하여 클러스터에 연결하려면 클러스터 연결 문자열이 있어야 합니다. Amazon Redshift 콘솔의 클러스터 세부 정보 페이지에서 클러스터 연결 문자열을 확인할 수 있습니다.

**클러스터의 연결 문자열을 찾으려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)에서 Amazon Redshift 콘솔을 엽니다.

1. 탐색 메뉴에서 **클러스터(Clusters)**를 선택한 후 목록에서 클러스터 이름을 선택하여 세부 정보를 엽니다.

1. **JDBC URL** 및 **ODBC URL** 연결 문자열은 **일반 정보(General information)** 섹션에서 추가 세부 정보와 함께 사용할 수 있습니다. 각 문자열은 클러스터가 실행되는 AWS 리전을 기반으로 합니다. 해당 연결 문자열 옆에 있는 아이콘을 클릭하여 복사합니다.

클러스터 엔드포인트에 연결하려면 [DescribeClusters API 요청](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DescribeClusters.html)의 클러스터 엔드포인트 URL을 사용할 수 있습니다. 다음은 클러스터 엔드포인트 예시입니다.

```
mycluster.cmeaswqeuae.us-east-2.redshift.amazonaws.com
```

클러스터에 대한 사용자 지정 도메인 이름을 설정한 경우 이를 사용하여 클러스터에 연결할 수도 있습니다. 사용자 지정 도메인 이름 생성에 대한 자세한 내용은 [사용자 지정 도메인 이름 설정](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME-connect.html).을 참조하세요.

**참고**  
연결할 때 클러스터 노드의 IP 주소 또는 VPC 엔드포인트의 IP 주소를 사용하지 마세요. 불필요한 중단을 방지하기 위해 항상 Redshift 엔드포인트를 사용하세요. 예외적으로 엔드포인트 URL을 사용하지 않는 유일한 상황은 사용자 지정 도메인 이름을 사용하는 경우입니다. 자세한 내용은 [클라이언트 연결에 사용자 지정 도메인 이름 사용](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME.html)을 참조하세요.

# Amazon Redshift용 JDBC 드라이버 버전 2.x 연결 구성
<a name="jdbc20-install"></a>

JDBC 드라이버 버전 2.x 연결을 사용하여 여러 서드 파티 SQL 클라이언트 도구에서 Amazon Redshift 클러스터에 연결할 수 있습니다. Amazon Redshift JDBC 커넥터는 오픈 소스 솔루션을 제공합니다. 소스 코드를 탐색하고, 개선 사항을 요청하고, 문제를 보고하고, 기여를 제공할 수 있습니다.

JDBC 드라이버 변경 사항에 대한 최신 정보는 [변경 로그](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/CHANGELOG.md)를 참조하세요.

기본적으로 Amazon Redshift JDBC 드라이버는 연결이 시간 초과되는 것을 방지하기 위해 TCP KeepAlive를 사용하도록 구성됩니다. 연결 URL에서 관련 속성을 설정하여 드라이버가 KeepAlive 패킷 전송을 시작하는 시기를 지정하거나 기능을 해제할 수 있습니다. 연결 URL의 구문에 대한 자세한 내용은 [연결 URL 구축](jdbc20-build-connection-url.md) 섹션을 참조하세요.


| 속성 | 설명 | 
| --- | --- | 
|  `TCPKeepAlive`  |  TCP KeepAlive를 해제하려면 이 속성을 `FALSE`로 설정합니다.  | 

**Topics**
+ [

# Amazon Redshift JDBC 드라이버, 버전 2.1 다운로드
](jdbc20-download-driver.md)
+ [

# Amazon Redshift JDBC 드라이버, 버전 2.2 설치
](jdbc20-install-driver.md)
+ [

# JDBC URL 가져오기
](jdbc20-obtain-url.md)
+ [

# 연결 URL 구축
](jdbc20-build-connection-url.md)
+ [

# JDBC와 Apache Maven의 연결 구성
](configure-jdbc20-connection-with-maven.md)
+ [

# 인증 및 SSL 구성
](jdbc20-configure-authentication-ssl.md)
+ [

# 로깅 구성
](jdbc20-configuring-logging.md)
+ [

# 데이터 형식 변환
](jdbc20-data-type-mapping.md)
+ [

# 준비된 명령문 지원 사용
](jdbc20-prepared-statement-support.md)
+ [

# JDBC 드라이버 버전 2.2과 1.x의 차이점
](jdbc20-jdbc10-driver-differences.md)
+ [

# JDBC 드라이버 버전 2.x용 초기화(.ini) 파일 생성
](jdbc20-ini-file.md)
+ [

# JDBC 드라이버 버전 2.x 구성 옵션
](jdbc20-configuration-options.md)
+ [

# JDBC 드라이버 버전 2.x의 이전 버전
](jdbc20-previous-driver-version-20.md)

# Amazon Redshift JDBC 드라이버, 버전 2.1 다운로드
<a name="jdbc20-download-driver"></a>

**참고**  
Amazon Redshift JDBC 2.x 드라이버는 스레드 세이프로 설계되지 않았습니다. 두 개 이상의 스레드가 동시에 동일한 연결을 사용하려고 하면 교착 상태, 오류, 잘못된 결과 또는 기타 예상치 못한 동작이 발생할 수 있습니다.  
다중 스레드 애플리케이션이 있는 경우 동시 액세스를 방지하기 위해 드라이버에 대한 액세스를 동기화하는 것이 좋습니다.

Amazon Redshift는 JDBC 4.2 API와 호환되는 도구용 드라이버를 제공합니다. 이 드라이버의 클래스 이름은 `com.amazon.redshift.Driver`입니다.

JDBC 드라이버를 설치하고 JDBC 드라이버 라이브러리를 참조하며 드라이버 클래스를 등록하는 방법에 대한 자세한 내용은 다음 주제를 참조하세요.

Amazon Redshift JDBC 드라이버 버전 2.x를 사용하는 각 컴퓨터에 대해 Java 런타임 환경(JRE) 8.0이 설치되어 있는지 확인합니다.

데이터베이스 인증을 위해 Amazon Redshift JDBC 드라이버를 사용하는 경우 Java 클래스 경로에 AWS SDK for Java 1.11.118 이상이 있는지 확인합니다. AWS SDK for Java가 설치되어 있지 않으면 JDBC 4.2 호환 드라이버와 AWS SDK용 드라이버 종속 라이브러리가 포함된 ZIP 파일을 다운로드합니다.
+ [JDBC 4.2 호환 드라이버 버전 2.x 및 AWS SDK 드라이버 종속 라이브러리](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.zip) 

  이 ZIP 파일에는 JDBC 4.2 호환 드라이버 버전 2.x와 AWS SDK for Java 1.x 드라이버 종속 라이브러리 파일이 포함되어 있습니다. JDBC 드라이버와 동일한 위치에 종속 jar 파일의 압축을 풉니다. JDBC 드라이버만 CLASSPATH에 있어야 합니다.

  전체 AWS SDK for Java 1.x는 이 ZIP 파일에 포함되어 있지 않습니다. 그러나 AWS Identity and Access Management(IAM) 데이터베이스 인증에 필요한 AWS SDK for Java 1.x 드라이버 종속 라이브러리는 포함되어 있습니다.

  IAM 데이터베이스 인증에 필요한 AWS SDK가 있는 이 Amazon Redshift JDBC 드라이버를 사용합니다.

  전체 AWS SDK for Java 1.x를 설치하려면 *AWS SDK for Java Developer Guide*의 [AWS SDK for Java 1.x](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/welcome.html)를 참조하세요.
+ [JDBC 4.2 호환 드라이버 버전 2.x(AWS SDK 제외)](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.jar) 

JDBC 드라이버 버전 2.x 소프트웨어 라이선스를 검토하고 로그 파일을 변경합니다.
+ [JDBC 드라이버 버전 2.x 라이선스](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/LICENSE) 
+ [JDBC 드라이버 버전 2.x 변경 로그](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/CHANGELOG.md)

JDBC 드라이버 버전 1.2.27.1051 이상은 Amazon Redshift 저장 프로시저를 지원합니다. 자세한 내용은 *Amazon Redshift 데이터베이스 개발자 안내서*의 [Amazon Redshift에서 저장 프로시저 생성](https://docs.aws.amazon.com/redshift/latest/dg/stored-procedure-overview.html) 섹션을 참조하세요.

# Amazon Redshift JDBC 드라이버, 버전 2.2 설치
<a name="jdbc20-install-driver"></a>

Amazon Redshift JDBC 4.2 호환 드라이버 버전 2.x와 AWS SDK용 드라이버 종속 라이브러리를 설치하려면 ZIP 아카이브에서 원하는 디렉터리로 파일을 추출합니다.

Amazon Redshift JDBC 4.2 호환 드라이버 버전 2.x(AWS SDK 제외)를 설치하려면 원하는 디렉터리에 JAR 파일을 복사합니다.

Amazon Redshift JDBC 드라이버를 사용하여 Amazon Redshift 데이터 스토어에 액세스하려면 다음 설명에 따라 구성을 수행해야 합니다.

**Topics**
+ [

# JDBC 드라이버 라이브러리 참조
](jdbc20-driver-libraries.md)
+ [

# 드라이버 클래스 등록
](jdbc20-register-driver-class.md)

# JDBC 드라이버 라이브러리 참조
<a name="jdbc20-driver-libraries"></a>

데이터에 연결하는 데 사용하는 JDBC 애플리케이션이나 Java 코드는 드라이버 JAR 파일에 액세스해야 합니다. ZIP 아카이브에서 추출한 모든 JAR 파일을 애플리케이션 또는 코드에 지정합니다.

## JDBC 애플리케이션에서 드라이버 사용
<a name="jdbc20-use-driver-jdbc-app"></a>

JDBC 애플리케이션은 일반적으로 드라이버 라이브러리 파일 목록 추가를 위한 구성 옵션 집합을 제공합니다. 제공된 옵션을 사용하여 ZIP 아카이브의 모든 JAR 파일을 애플리케이션의 드라이버 구성의 일부로 포함합니다. 자세한 내용은 JDBC 애플리케이션 설명서를 참조하세요.

## Java 코드에서 드라이버 사용
<a name="jdbc20-use-driver-java-code"></a>

클래스 경로에 모든 드라이버 라이브러리 파일을 포함해야 합니다. 클래스 경로는 Java Runtime Environment가 클래스와 기타 리소스 파일을 검색하는 경로입니다. 운영 체제의 클래스 경로를 설정하려면 Java SE 설명서에서 자세한 내용을 참조하세요.
+ Windows: [https://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html](https://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html)
+ Linux 및 Solaris: [https://docs.oracle.com/javase/7/docs/technotes/tools/solaris/classpath.html](https://docs.oracle.com/javase/7/docs/technotes/tools/solaris/classpath.html)
+ macOS: 기본 macOS 클래스 경로는 JDBC 드라이버가 설치된 디렉터리입니다.

# 드라이버 클래스 등록
<a name="jdbc20-register-driver-class"></a>

애플리케이션에 적합한 클래스를 등록해야 합니다. 다음 클래스를 사용하여 Amazon Redshift JDBC 드라이버를 Amazon Redshift 데이터 스토어에 연결합니다.
+ `Driver` 클래스는 를 확장합니다.`java.sql.Driver`
+ `DataSource` 클래스는 `javax.sql.DataSource` 및 `javax.sql.ConnectionPoolDataSource`를 확장합니다.

드라이버는 JDBC 버전과 독립된 다음과 같은 정규화된 클래스 이름을 지원합니다.
+ `com.amazon.redshift.jdbc.Driver`
+ `com.amazon.redshift.jdbc.DataSource`

다음 예에서는 DriverManager 클래스를 사용하여 JDBC 4.2 연결을 설정하는 방법을 보여줍니다.

```
            private static Connection connectViaDM() throws Exception
{
Connection connection = null;
connection = DriverManager.getConnection(CONNECTION_URL);
return connection;
}
```

다음 예에서는 `DataSource` 클래스를 사용하여 연결을 설정하는 방법을 보여줍니다.

```
 private static Connection connectViaDS() throws Exception
{
Connection connection = null;
11
Amazon Redshift JDBC Driver Installation and Configuration Guide
DataSource ds = new com.amazon.redshift.jdbc.DataSource
();
ds.setURL(CONNECTION_URL);
connection = ds.getConnection();
return connection;
}
```

# JDBC URL 가져오기
<a name="jdbc20-obtain-url"></a>

SQL 클라이언트 도구에서 Amazon Redshift 클러스터에 연결하려면 먼저 클러스터의 JDBC URL을 알아야 합니다. JDBC URL의 형식은 다음과 같습니다. `jdbc:redshift://endpoint:port/database` 

위에 나와 있는 형식의 필드는 다음과 같은 값을 가집니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/jdbc20-obtain-url.html)

다음은 JDBC URL의 예입니다. `jdbc:redshift://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev` 

URL 값에 다음 URI 예약 문자가 포함되어 있는 경우 해당 값은 URL 인코딩된 값이어야 합니다.
+  ; 
+  \$1 
+  \$1 
+  \$1 
+  [ 
+  ] 
+  & 
+  = 
+  ? 
+  빈 공간 

예를 들어 `PWD` 값이 `password:password`인 경우 해당 값을 사용하는 연결 URL은 다음과 같습니다。

`jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=password%3Apassword`

JDBC 연결을 만드는 방법에 대한 자세한 내용은 [클러스터 연결 문자열 찾기](connecting-connection-string.md) 섹션을 참조하세요.

클라이언트 컴퓨터가 데이터베이스에 연결하지 못하는 경우에는 가능한 문제를 해결할 수 있습니다. 자세한 내용은 [Amazon Redshift 연결 문제 해결](troubleshooting-connections.md) 섹션을 참조하세요.

# 연결 URL 구축
<a name="jdbc20-build-connection-url"></a>

연결 URL을 사용하여 액세스 중인 데이터 스토어에 대한 연결 정보를 제공합니다. 다음은 Amazon Redshift JDBC 드라이버 버전 2.x의 연결 URL 형식입니다. 여기서 [Host]는 Amazon Redshift 서버의 엔드포인트이고 [Port]는 서버가 클라이언트 요청을 수신 대기하는 데 사용하는 TCP(Transmission Control Protocol) 포트의 번호입니다.

```
jdbc:redshift://[Host]:[Port]
```

다음은 몇 가지 옵션 설정을 지정하는 연결 URL의 형식입니다.

```
jdbc:redshift://[Host]:[Port]/[database];[Property1]=[Value];
[Property2]=[Value];
```

URL 값에 다음 URI 예약 문자가 포함되어 있는 경우 해당 값은 URL 인코딩된 값이어야 합니다.
+  ; 
+  \$1 
+  \$1 
+  \$1 
+  [ 
+  ] 
+  & 
+  = 
+  ? 
+  빈 공간 

예를 들어 `PWD` 값이 `password:password`인 경우 해당 값을 사용하는 연결 URL은 다음과 같습니다。

`jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=password%3Apassword`

AWS에서 미국 서부(캘리포니아 북부) 리전에 있는 Amazon Redshift 클러스터의 포트 9000에 연결하려는 경우를 예로 들어 보겠습니다. 또한 `dev`라는 데이터베이스에 액세스하고 데이터베이스 사용자 이름과 암호를 사용하여 연결을 인증하려고 합니다. 이 경우 다음과 같은 연결 URL을 사용합니다.

```
jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=amazon
```

다음 문자를 사용하여 나머지 URL 문자열에서 구성 옵션을 구분할 수 있습니다.
+ ;
+ ?

예를 들어 다음과 같은 URL 문자열은 동일합니다.

```
jdbc:redshift://my_host:5439/dev;ssl=true;defaultRowFetchSize=100
```

```
jdbc:redshift://my_host:5439/dev?ssl=true;defaultRowFetchSize=100
```

다음 문자를 사용하여 URL 문자열에서 구성 옵션을 서로 구분할 수 있습니다.
+ ;
+ &

예를 들어 다음과 같은 URL 문자열은 동일합니다.

```
jdbc:redshift://my_host:5439/dev;ssl=true;defaultRowFetchSize=100
```

```
jdbc:redshift://my_host:5439/dev;ssl=true&defaultRowFetchSize=100
```

다음 URL 예에서는 로그 수준 6과 로그 경로를 지정합니다.

```
jdbc:redshift://redshift.amazonaws.com:5439/dev;DSILogLevel=6;LogPath=/home/user/logs;
```

연결 URL에서 속성을 복제하지 않습니다.

지정할 수 있는 구성 옵션의 전체 목록은 [JDBC 드라이버 버전 2.x 구성 옵션](jdbc20-configuration-options.md) 섹션을 참조하세요.

**참고**  
연결할 때 클러스터 노드의 IP 주소 또는 VPC 엔드포인트의 IP 주소를 사용하지 마세요. 불필요한 중단을 방지하기 위해 항상 Redshift 엔드포인트를 사용하세요. 예외적으로 엔드포인트 URL을 사용하지 않는 유일한 상황은 사용자 지정 도메인 이름을 사용하는 경우입니다. 자세한 내용은 [클라이언트 연결에 사용자 지정 도메인 이름 사용](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME.html)을 참조하세요.

# JDBC와 Apache Maven의 연결 구성
<a name="configure-jdbc20-connection-with-maven"></a>

Apache Maven은 소프트웨어 프로젝트 관리 및 이해 도구입니다. AWS SDK for Java는 Apache Maven 프로젝트를 지원합니다. 자세한 내용은 *AWS SDK for Java Developer Guide*의 [Using the SDK with Apache Maven](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-project-maven.html) 섹션을 참조하세요.

Apache Maven을 사용하는 경우 Amazon Redshift JDBC 드라이버를 사용하여 Amazon Redshift 클러스터에 연결하는 프로젝트를 구성하고 구축할 수 있습니다. 이를 위해 JDBC 드라이버를 프로젝트의 `pom.xml` 파일에 종속성으로 추가하세요. Maven을 사용해 프로젝트를 빌드하고 JDBC 연결을 사용하려면 다음 섹션에서 설명하는 단계를 따르세요.

**JDBC 드라이버를 Maven 종속성으로 구성하려면**

1. `pom.xml` 파일의 리포지토리 섹션에 Amazon 리포지토리 또는 Maven Central 리포지토리를 추가합니다.
**참고**  
다음 코드 예제의 URL은 브라우저에서 사용하면 오류를 반환합니다. 이 URL은 Maven 프로젝트의 컨텍스트에만 사용하세요.

   보안 소켓 계층(SSL)을 사용하여 연결하려면 다음 리포지토리를 `pom.xml` 파일에 추가합니다.

   ```
   <repositories>
       <repository>
         <id>redshift</id>
         <url>https://s3.amazonaws.com/redshift-maven-repository/release</url>
       </repository>
   </repositories>
   ```

   Maven Central 리포지토리의 경우 `pom.xml` 파일에 다음을 추가합니다.

   ```
   <repositories>
       <repository>
         <id>redshift</id>
         <url>https://repo1.maven.org/maven2</url>
       </repository>
   </repositories>
   ```

1. `pom.xml` 파일의 종속성 섹션에서 사용할 드라이버 버전을 선언합니다.

   Amazon Redshift는 JDBC 4.2 API와 호환되는 도구용 드라이버를 제공합니다. 이러한 드라이버가 지원하는 기능에 대한 자세한 내용은 [Amazon Redshift JDBC 드라이버, 버전 2.1 다운로드](jdbc20-download-driver.md) 섹션을 참조하세요.

   다음 예에서 `driver-version`을 사용 중인 드라이버 버전(예: `2.1.0.1`)으로 바꿉니다. JDBC 4.2 호환 드라이버의 경우 다음을 사용합니다.

   ```
   <dependency>
      <groupId>com.amazon.redshift</groupId>
      <artifactId>redshift-jdbc42</artifactId>
      <version>driver-version</version>
   </dependency>
   ```

   이 드라이버의 클래스 이름은 `com.amazon.redshift.Driver`입니다.

IAM 데이터베이스 인증을 사용할 때는 Amazon Redshift Maven 드라이버에 다음과 같은 선택적 종속성이 필요합니다.

```
<dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-core</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-redshift</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
<dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-sts</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
```

Amazon Redshift JDBC 드라이버를 최신 버전으로 업그레이드하거나 변경하려면 먼저 종속 항목의 버전 섹션을 최신 버전의 드라이버로 수정합니다. 그런 다음 다음과 같이 Maven Clean Plugin으로 프로젝트를 정리하세요.

```
mvn clean
```

# 인증 및 SSL 구성
<a name="jdbc20-configure-authentication-ssl"></a>

무단 액세스로부터 데이터를 보호하기 위해 Amazon Redshift 데이터 스토어는 사용자 자격 증명을 사용하여 모든 연결을 인증할 것을 요구합니다. 또한 일부 데이터 스토어는 단방향 인증 여부에 관계없이 보안 소켓 계층(SSL) 프로토콜을 통한 연결을 요구합니다.

Amazon Redshift JDBC 드라이버 버전 2.x는 이러한 인증 프로토콜을 완벽하게 지원합니다.

드라이버에서 지원하는 SSL 버전은 사용 중인 JVM 버전에 따라 다릅니다. 각 Java 버전에서 지원하는 SSL 버전에 대한 자세한 내용은 Java Platform Group Product Management Blog의 [Diagnosing TLS, SSL, and HTTPS](https://blogs.oracle.com/java-platform-group/diagnosing-tls,-ssl,-and-https)를 참조하세요.

연결에 사용되는 SSL 버전은 드라이버와 서버 모두에서 지원하는 가장 높은 버전으로 연결 시 결정됩니다.

연결하려는 Amazon Redshift 서버의 보안 요구 사항에 따라 연결을 인증하도록 Redshift JDBC 드라이버 버전 2.x를 구성합니다.

연결을 인증하려면 항상 Redshift 사용자 이름과 암호를 입력해야 합니다. 서버에서 SSL 활성화 및 필요 여부에 따라 SSL을 통해 연결하도록 드라이버를 구성해야 할 수도 있습니다. 또는 단방향 SSL 인증을 사용하여 클라이언트(드라이버 자체)가 서버의 ID를 확인하도록 할 수 있습니다.

연결 URL에서 드라이버에 구성 정보를 제공합니다. 연결 URL의 구문에 대한 자세한 내용은 [연결 URL 구축](jdbc20-build-connection-url.md) 섹션을 참조하세요.

*SSL*은 전송 계층 보안과 보안 소켓 계층(TLS/SSL)을 나타냅니다. 이 드라이버는 TLS/SSL의 업계 표준 버전을 지원합니다.

## IAM 인증 구성
<a name="jdbc20-configure-iam-authentication"></a>

IAM 인증을 사용하여 Amazon Redshift 서버에 연결하는 경우 다음 속성을 데이터 원본 연결 문자열의 일부로 설정합니다.

 IAM 인증에 대한 자세한 내용은 [Amazon Redshift의 Identity and Access Management](redshift-iam-authentication-access-control.md) 섹션을 참조하세요.

IAM 인증을 사용하려면 다음 연결 문자열 형식 중 하나를 사용합니다.


| 연결 문자열 | 설명 | 
| --- | --- | 
|  `jdbc:redshift:iam:// [host]:[port]/[db]`  |  일반 연결 문자열입니다. 드라이버는 호스트에서 ClusterID와 리전을 유추합니다.  | 
|  `jdbc:redshift:iam:// [cluster-id]: [region]/[db]`  |  드라이버는 주어진 ClusterID 및 리전에 따라 호스트 정보를 검색합니다.  | 
|  `jdbc:redshift:iam:// [host]/[db]`  |  드라이버는 기본값이 포트 5439이며 호스트에서 ClusterID와 리전을 유추합니다. 클러스터를 생성, 수정 또는 마이그레이션할 때 선택한 포트에 따라 선택한 포트에 대한 액세스를 허용합니다.  | 

## 프로파일 지정
<a name="jdbc20-aws-credentials-profiles"></a>

IAM 인증을 사용하는 경우 프로파일 이름 아래에 필수 또는 선택적 연결 속성을 추가로 지정할 수 있습니다. 이를 통해 연결 문자열에 특정 정보를 직접 넣는 것을 피할 수 있습니다. Profile 속성을 사용하여 연결 문자열에 프로파일 이름을 지정합니다.

AWS 자격 증명 파일에 프로파일을 추가할 수 있습니다. 이 파일의 기본 위치는 `~/.aws/credentials`입니다.

환경 변수 `AWS_CREDENTIAL_PROFILES_FILE`에 경로를 설정하여 기본값을 변경할 수 있습니다.

 프로파일에 대한 자세한 내용은 *AWS SDK for Java*의 [AWS 자격 증명 작업](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html) 섹션을 참조하세요.

## 인스턴스 프로파일 자격 증명 사용
<a name="jdbc20-instance-profile-credentials"></a>

IAM 역할과 연결된 Amazon EC2 인스턴스에서 애플리케이션을 실행하는 경우 인스턴스 프로파일 자격 증명을 사용하여 연결할 수 있습니다.

이렇게 하려면 앞의 테이블에 나와 있는 IAM 연결 문자열 형식 중 하나를 사용하고 dbuser 연결에 사용하는 Amazon Redshift 사용자 이름으로 dbuser 연결 속성을 설정합니다.

인스턴스 프로파일에 대한 자세한 내용은 *IAM User Guide*의 [Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) 섹션을 참조하세요.

## 자격 증명 공급자 사용
<a name="jdbc20-aws-credentials-provider"></a>

드라이버에서 다음 서비스의 자격 증명 공급자 플러그인도 지원합니다.
+ AWS IAM Identity Center
+ Active Directory Federation Service(ADFS)
+ JSON 웹 토큰(JWT) 서비스
+ Microsoft Azure Active Directory(AD) 서비스 및 브라우저
+ Okta 서비스
+ PingFederate 서비스 
+ Okta, Ping, ADFS 등의 SAML 서비스용 브라우저 SAML

이러한 서비스 중 하나를 사용하는 경우 연결 URL에서 다음 속성을 지정해야 합니다.
+ **Plugin\$1Name** – 자격 증명 공급자 플러그인 클래스의 정규화된 클래스 경로입니다.
+ **IdP\$1Host:** – Amazon Redshift에 인증하는 데 사용하는 서비스의 호스트입니다.
+ **IdP\$1Port** – 인증 서비스의 호스트가 수신 대기하는 포트입니다. Okta에는 필요하지 않습니다.
+ **User** – idp\$1host 서버의 사용자 이름입니다.
+ **Password** – idp\$1host 사용자 이름과 연결된 암호입니다.
+ **DbUser** – 연결에 사용하는 Amazon Redshift 사용자 이름입니다.
+ **SSL\$1Insecure** – IDP 서버 인증서를 확인해야 하는지 여부를 나타냅니다.
+ **Client\$1ID** – Azure AD 포털의 사용자 이름과 연결된 클라이언트 ID입니다. Azure AD에만 사용됩니다.
+ **Client\$1Secret** – Azure AD 포털의 클라이언트 ID와 연결된 클라이언트 암호입니다. Azure AD에만 사용됩니다.
+ **IdP\$1Tenant** – Amazon Redshift 애플리케이션의 Azure AD 테넌트 ID입니다. Azure AD에만 사용됩니다.
+ **App\$1ID** – Amazon Redshift 애플리케이션의 Okta 앱 ID입니다. Okta에만 사용됩니다.
+ **App\$1Name** – Amazon Redshift 애플리케이션의 Okta 앱 이름(옵션)입니다. Okta에만 사용됩니다.
+ **Partner\$1SPID** – 파트너 SPID(서비스 공급자 ID) 값(옵션)입니다. PingFederate에만 사용됩니다.
+ **Idc\$1Region** - AWS IAM Identity Center 인스턴스가 위치한 AWS 리전입니다. AWS IAM Identity Center에만 사용됩니다.
+ **Issuer\$1Url** - AWS IAM Identity Center 서버의 인스턴스 엔드포인트입니다. AWS IAM Identity Center에만 사용됩니다.

이러한 서비스 중 하나에 브라우저 플러그인을 사용하는 경우 연결 URL에 다음이 포함될 수도 있습니다.
+ **Login\$1URL** – 브라우저 플러그인을 통해 SAML(Security Assertion Markup Language) 또는 Azure AD 서비스를 사용할 때 자격 증명 공급자의 웹 사이트에 있는 리소스의 URL입니다. 브라우저 플러그인을 사용하는 경우 이 파라미터는 필수입니다.
+ **Listen\$1Port** - 브라우저 플러그인을 통해 SAML, Azure AD 또는 AWS IAM ID 센터 서비스를 사용할 때 드라이버가 ID 제공업체로부터 SAML 응답을 가져오는 데 사용하는 포트입니다.
+ **IdP\$1Response\$1Timeout** - 브라우저 플러그인을 통해 SAML, Azure AD 또는 AWS IAM ID 센터 서비스를 사용할 때 드라이버가 ID 제공업체의 SAML 응답을 기다리는 시간(초)입니다.

추가 연결 문자열 속성에 대한 자세한 내용은 [JDBC 드라이버 버전 2.x 구성 옵션](jdbc20-configuration-options.md) 섹션을 참조하세요.

# 사용자 이름 및 암호만 사용
<a name="jdbc20-authentication-username-password"></a>

연결하려는 서버가 SSL을 사용하지 않는 경우 연결을 인증하는 데 Redshift 사용자 이름과 암호만 입력하면 됩니다.

**Redshift 사용자 이름 및 암호만 사용하여 인증을 구성하려면 다음과 같이 합니다.**

1. `UID` 속성을 Amazon Redshift 서버 액세스를 위한 Redshift 사용자 이름으로 설정합니다.

1. PWD 속성을 Redshift 사용자 이름에 해당하는 암호로 설정합니다.

# 자격 증명 확인 없이 SSL 사용
<a name="jdbc20-use-ssl-without-identity-verification"></a>

연결 중인 서버에서 SSL을 사용하지만 자격 증명 확인이 필요하지 않은 경우 비검증 SSL 팩토리를 사용하도록 드라이버를 구성할 수 있습니다.

**자격 증명 확인 없이 SSL 연결을 구성하려면**

1. `UID` 속성을 Amazon Redshift 서버 액세스를 위한 Redshift 사용자 이름으로 설정합니다.

1. `PWD` 속성을 Redshift 사용자 이름에 해당하는 암호로 설정합니다.

1. `SSLFactory` 속성 `com.amazon.redshift.ssl.NonValidatingFactory`로 설정합니다.

# 단방향 SSL 인증 사용
<a name="jdbc20-use-one-way-SSL-authentication"></a>

연결하려는 서버가 SSL을 사용하고 인증서가 있는 경우 단방향 인증을 사용하여 서버의 자격 증명을 확인하도록 드라이버를 구성할 수 있습니다.

단방향 인증에는 서버의 자격 증명 확인을 위한 서명된 신뢰할 수 있는 SSL 인증서가 필요합니다. 특정 인증서를 사용하거나 적절한 인증서가 들어 있는 TrustStore에 액세스하도록 드라이버를 구성할 수 있습니다. 인증서 또는 TrustStore를 지정하지 않으면 드라이버가 기본 Java TrustStore(일반적으로 `jssecacerts` 또는 `cacerts`)를 사용합니다.

**단방향 SSL 인증을 구성하려면**

1. UID 속성을 Amazon Redshift 서버 액세스를 위한 Redshift 사용자 이름으로 설정합니다.

1. PWD 속성을 Redshift 사용자 이름에 해당하는 암호로 설정합니다.

1. SSL 속성을 true로 설정합니다.

1. SSLRootCert 속성을 루트 CA 인증서의 위치로 설정합니다.

1. 기본 Java TrustStore 중 하나를 사용하지 않는 경우 다음 중 하나를 수행합니다.
   + 서버 인증서를 지정하려면 SSLRootCert 속성을 인증서의 전체 경로로 설정합니다.
   + TrustStore를 지정하려면 다음을 수행합니다.

     1. keytool 프로그램으로 사용하려는 TrustStore에 서버 인증서를 추가합니다.

     1. 드라이버를 사용하여 Java 애플리케이션을 시작할 때 사용할 TrustStore와 암호를 지정합니다. 예:

        ```
        -Djavax.net.ssl.trustStore=[TrustStoreName]
        -Djavax.net.ssl.trustStorePassword=[TrustStorePassword]
        -Djavax.net.ssl.trustStoreType=[TrustStoreType]
        ```

1. 그중 하나의 경로를 선택하세요.
   + 인증서를 검증하려면 SSLMode 속성을 verify-ca로 설정합니다.
   + 인증서를 검증하고 인증서의 호스트 이름을 확인하려면 SSLMode 속성을 verify-full로 설정합니다.

# 로깅 구성
<a name="jdbc20-configuring-logging"></a>

문제 진단에 도움이 되도록 드라이버에서 로그를 설정할 수 있습니다.

다음 방법을 사용하여 드라이버 정보를 로그할 수 있습니다.
+ 로그된 정보를 .log 파일에 저장하려면 [로그 파일 사용](jdbc20-using-log-files.md) 섹션을 참조하세요.
+ 로그된 정보를 DriverManager에 지정된 LogStream 또는 LogWriter로 보내려면 [LogStream 또는 LogWriter 사용](jdbc20-logstream-option.md) 섹션을 참조하세요.

연결 URL에서 드라이버에 구성 정보를 제공합니다. 연결 URL의 구문에 대한 자세한 내용은 [연결 URL 구축](jdbc20-build-connection-url.md) 섹션을 참조하세요.

# 로그 파일 사용
<a name="jdbc20-using-log-files"></a>

문제를 포착할 수 있을 만큼만 로깅을 길게 설정합니다. 로깅은 성능을 떨어뜨릴 뿐만 아니라 대용량의 디스크 공간을 소비할 수 있기 때문입니다.

연결 URL에서 LogLevel 키를 설정하여 로깅을 설정하고 로그 파일에 포함되는 세부 정보의 양을 지정합니다. 다음 표에는 Amazon Redshift JDBC 드라이버 버전 2.x에서 제공하는 로깅 수준이 나열되어 있습니다. 아래로 갈수록 더 자세한 세부 정보가 로그됩니다.


| LogLevel 값 | 설명 | 
| --- | --- | 
|  1  |  드라이버 중단으로 이어질 심각한 오류 이벤트를 로그합니다.  | 
|  2  |  드라이버가 계속 실행될 수 있는 오류 이벤트를 로그합니다.  | 
|  3  |  작업을 수행하지 않으면 발생할 수 있는 이벤트를 로그합니다. 이 수준의 로깅과 이 수준 이상의 로깅 수준은 사용자의 쿼리도 기록합니다.  | 
|  4  |  드라이버의 진행 상황을 설명하는 일반 정보를 로그합니다.  | 
|  5  |  드라이버 디버깅에 유용한 세부 정보를 로그합니다.  | 
|  6  |  모든 드라이버 활동을 로그합니다.  | 

**로그 파일을 사용하는 로깅을 설정하려면**

1. LogLevel 속성을 로그 파일에 포함하려는 정보 수준으로 설정합니다.

1. LogPath 속성을 로그 파일을 저장할 폴더의 전체 경로로 설정합니다.

   예를 들어 다음 연결 URL은 로깅 수준 3을 사용하고 로그 파일을 C:\$1temp 폴더에 저장합니다. `jdbc:redshift://redshift.company.us-west- 1.redshift.amazonaws.com:9000/Default;DSILogLevel=3;LogPath=C:\temp` 

1. 새 설정이 적용되도록 하려면 JDBC 애플리케이션을 다시 시작하고 서버에 다시 연결합니다.

   Amazon Redshift JDBC 드라이버가 LogPath 속성에 지정된 위치에 다음 로그 파일을 생성합니다.
   +  연결과 관련되지 않은 드라이버 활동을 로그하는 redshift\$1jdbc.log 파일입니다.
   + 각 데이터베이스 연결에 대한 redshift\$1jdbc\$1connection\$1[Number].log 파일입니다. 여기서 [Number]는 각 로그 파일을 식별하는 번호입니다. 이 파일은 연결과 관련된 드라이버 활동을 로그합니다.

LogPath 값이 유효하지 않으면 드라이버가 로그된 정보를 표준 출력 스트림(`System.out`)으로 전송합니다.

# LogStream 또는 LogWriter 사용
<a name="jdbc20-logstream-option"></a>

문제를 포착할 수 있을 만큼만 로깅을 길게 설정합니다. 로깅은 성능을 떨어뜨릴 뿐만 아니라 대용량의 디스크 공간을 소비할 수 있기 때문입니다.

연결 URL에 LogLevel 키를 설정하여 로깅을 설정하고 DriverManager에 지정된 LogStream 또는 LogWriter로 전송되는 세부 정보의 양을 지정합니다.

**LogStream 또는 LogWriter를 사용하는 로깅을 설정하려면**

1. 드라이버의 진행률을 설명하는 일반 정보를 로그하도록 드라이버를 구성하려면 LogLevel 속성을 1 또는 INFO로 설정합니다.

1. 새 설정이 적용되도록 하려면 JDBC 애플리케이션을 다시 시작하고 서버에 다시 연결합니다.

# 데이터 형식 변환
<a name="jdbc20-data-type-mapping"></a>

Amazon Redshift JDBC 드라이버 버전 2.x는 Amazon Redshift, SQL 및 Java 데이터 유형 간 변환으로 많은 일반 데이터 유형을 지원합니다.

다음 표에는 지원되는 데이터 형식 매핑이 나와 있습니다.


| Amazon Redshift 형식 | SQL 형식 | Java 형식 | 
| --- | --- | --- | 
|  BIGINT  |  SQL\$1BIGINT  |  Long  | 
|  BOOLEAN  |  SQL\$1BIT  |  Boolean  | 
|  CHAR  |  SQL\$1CHAR  |  문자열  | 
|  DATE  |  SQL\$1TYPE\$1DATE  |  java.sql.Date  | 
|  DECIMAL  |  SQL\$1NUMERIC  |  BigDecimal  | 
|  DOUBLE PRECISION  |  SQL\$1DOUBLE  |  Double  | 
|  GEOMETRY  |  SQL\$1 LONGVARBINARY  |  byte[]  | 
|  INTEGER  |  SQL\$1INTEGER  |  Integer  | 
|  OID  |  SQL\$1BIGINT  |  Long  | 
|  SUPER  |  SQL\$1LONGVARCHAR  |  문자열  | 
|  REAL  |  SQL\$1REAL  |  Float  | 
|  SMALLINT  |  SQL\$1SMALLINT  |  Short  | 
|  TEXT  |  SQL\$1VARCHAR  |  문자열  | 
|  TIME  |  SQL\$1TYPE\$1TIME  |  java.sql.Time  | 
|  TIMETZ  |  SQL\$1TYPE\$1TIME  |  java.sql.Time  | 
|  TIMESTAMP  |  SQL\$1TYPE\$1 TIMESTAMP  |  java.sql.Timestamp  | 
|  TIMESTAMPTZ  |  SQL\$1TYPE\$1 TIMESTAMP  |  java.sql.Timestamp  | 
|  VARCHAR  |  SQL\$1VARCHAR  |  문자열  | 

# 준비된 명령문 지원 사용
<a name="jdbc20-prepared-statement-support"></a>

Amazon Redshift JDBC 드라이버는 준비된 문을 지원합니다. 준비된 문을 사용하여 동일한 연결 중 여러 번 실행해야 하는 파라미터화된 쿼리의 성능을 향상시킬 수 있습니다.

*준비된 문*은 서버 측에서 컴파일되지만 즉시 실행되지 않는 SQL 문입니다. 컴파일된 문은 객체 또는 연결을 닫을 때까지 PreparedStatement 객체로 서버에 저장됩니다. 해당 객체가 존재하는 동안 문을 다시 컴파일하지 않고도 여러 파라미터 값을 사용하여 준비된 문을 필요한 만큼 실행할 수 있습니다. 이로 인해 오버헤드가 줄어 쿼리 집합을 더 빠르게 실행할 수 있습니다.

준비된 문에 대한 자세한 내용은[Oracle에서 제공하는 JDBC Basics 튜토리얼](https://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html)의 "Using Prepared Statements" 섹션을 참조하세요.

쿼리가 여러 개 포함된 문을 준비할 수 있습니다. 예를 들어 다음의 준비된 문에는 2개의 INSERT 쿼리가 포함되어 있습니다.

```
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO
MyTable VALUES (1, 'abc'); INSERT INTO CompanyTable VALUES
(1, 'abc');");
```

이러한 쿼리가 동일한 준비된 문 내에 지정된 다른 쿼리의 결과에 의존하지 않도록 주의합니다. 쿼리는 준비 단계에서 실행되지 않기 때문에 결과가 아직 반환되지 않았으며 동일한 준비된 문의 다른 쿼리에서 사용할 수 없습니다.

예를 들어 테이블을 생성한 다음 새로 생성된 테이블에 값을 삽입하는 다음의 준비된 문은 허용되지 않습니다.

```
PreparedStatement pstmt = conn.prepareStatement("CREATE
TABLE MyTable(col1 int, col2 varchar); INSERT INTO myTable
VALUES (1, 'abc');");
```

이 문을 준비하려고 하면 서버에서 대상 테이블(myTable)이 아직 존재하지 않는다는 오류를 반환합니다. CREATE 쿼리를 실행해야 INSERT 쿼리를 준비할 수 있습니다.

# JDBC 드라이버 버전 2.2과 1.x의 차이점
<a name="jdbc20-jdbc10-driver-differences"></a>

이 섹션에서는 JDBC 드라이버 버전 2.2와 1.x에서 반환되는 정보의 차이점에 대해 설명합니다. JDBC 드라이버 버전 1.x는 공급이 중단되었습니다.

다음 표에는 JDBC 드라이버의 각 버전에 대해 getDatabaseProductName() 및 getDatabaseProductVersion() 함수에서 반환된 DatabaseMetadata 정보가 나열되어 있습니다. JDBC 드라이버 버전 2.2은 연결을 설정하는 동안 값을 가져옵니다. JDBC 드라이버 버전 1.x는 쿼리의 결과로 값을 가져옵니다.


| JDBC 드라이버 버전 | getDatabaseProductName() 결과 | getDatabaseProductVersion() 결과 | 
| --- | --- | --- | 
|  2.2  |  Redshift  |  8.0.2  | 
|  1.x  |  PostgreSQL  |  08.00.0002  | 

다음 표에는 JDBC 드라이버의 각 버전에 대해 getTypeInfo 함수에서 반환된 DatabaseMetadata 정보가 나열되어 있습니다.


| JDBC 드라이버 버전 | getTypeInfo 결과 | 
| --- | --- | 
|  2.2  |  Redshift 데이터 형식과 일치  | 
|  1.x  |  PostgreSQL 데이터 형식과 일치  | 

# JDBC 드라이버 버전 2.x용 초기화(.ini) 파일 생성
<a name="jdbc20-ini-file"></a>

Amazon Redshift JDBC 드라이버 버전 2.x용 초기화(.ini) 파일을 사용하여 시스템 수준 구성 파라미터를 지정할 수 있습니다. 예를 들어 애플리케이션마다 페더레이션 IdP 인증 파라미터가 다를 수 있습니다. .ini 파일은 SQL 클라이언트가 필요한 구성 파라미터를 가져올 수 있는 공통 위치를 제공합니다.

SQL 클라이언트에 대한 구성 옵션이 들어 있는 JDBC 드라이버 버전 2.x 초기화(.ini) 파일을 생성할 수 있습니다. 파일의 기본 이름은 `rsjdbc.ini`입니다. JDBC 드라이버 버전 2.x는 다음 위치(우선 순위에 따라 나열됨)에서 .ini 파일을 확인합니다.
+ `IniFile`연결 URL 또는 SQL 클라이언트의 연결 속성 대화 상자에 있는 파라미터. `IniFile` 파라미터에 파일 이름을 포함한 .ini 파일의 전체 경로가 포함되어 있는지 확인합니다. `IniFile` 파라미터에 대한 자세한 내용은 [INIFILE](jdbc20-configuration-options.md#jdbc20-inifile-option) 섹션을 참조하세요. `IniFile` 파라미터가.ini 파일의 위치를 잘못 지정하면 오류가 표시됩니다.
+ 파일 이름을 포함한 전체 경로가 포함된 AMAZON\$1REDSHIFT\$1JDBC\$1INI\$1FILE과 같은 환경 변수. `rsjdbc.ini`를 사용하거나 파일 이름을 지정합니다. AMAZON\$1REDSHIFT\$1JDBC\$1INI\$1FILE 환경 변수가.ini 파일의 위치를 잘못 지정하면 오류가 표시됩니다.
+ 드라이버 JAR 파일이 있는 디렉터리.
+ 사용자 홈 디렉터리.
+ 시스템의 임시 디렉터리.

.ini 파일을 [DRIVER]와 같은 섹션으로 구성할 수 있습니다. 각 섹션에는 다양한 연결 파라미터를 지정하는 키-값 페어가 있습니다. `IniSection` 파라미터를 사용하여.ini 파일에 섹션을 지정할 수 있습니다. `IniSection` 파라미터에 대한 자세한 내용은 [IniSection](jdbc20-configuration-options.md#jdbc20-inisection-option) 섹션을 참조하세요.

다음은 [DRIVER], [DEV], [QA] 및 [PROD]에 대한 섹션이 있는 .ini 파일 형식의 예입니다. [DRIVER] 섹션은 모든 연결에 적용할 수 있습니다.

```
[DRIVER]
key1=val1
key2=val2

[DEV]
key1=val1
key2=val2

[QA]
key1=val1
key2=val2

[PROD]
key1=val1
key2=val2
```

JDBC 드라이버 버전 2.x는 우선 순위에 따라 나열된 다음 위치에서 구성 파라미터를 로드합니다.
+ 애플리케이션 코드의 기본 구성 파라미터.
+ .ini 파일의 [DRIVER] 섹션 속성(포함된 경우).
+ 연결 URL 또는 SQL 클라이언트의 연결 속성 대화 상자에 `IniSection` 옵션이 제공되는 경우 사용자 정의 섹션 구성 파라미터.
+ `getConnection` 호출에 지정된 연결 속성 객체의 속성.
+ 연결 URL에 지정된 구성 파라미터.

# JDBC 드라이버 버전 2.x 구성 옵션
<a name="jdbc20-configuration-options"></a>

아래에서 Amazon Redshift JDBC 드라이버 버전 2.2에 지정할 수 있는 옵션에 대한 설명을 찾을 수 있습니다. 구성 옵션은 대소문자를 구분하지 않습니다.

연결 URL을 사용하여 구성 속성을 설정할 수 있습니다. 자세한 내용은 [연결 URL 구축](jdbc20-build-connection-url.md) 섹션을 참조하세요.

**Topics**
+ [

## AccessKeyID
](#jdbc20-accesskeyid-option)
+ [

## AllowDBUserOverride
](#jdbc20-allowdbuseroverride-option)
+ [

## App\$1ID
](#jdbc20-app-id-option)
+ [

## App\$1Name
](#jdbc20-app-name-option)
+ [

## ApplicationName
](#jdbc20-applicationname-option)
+ [

## AuthProfile
](#jdbc20-authprofile-option)
+ [

## AutoCreate
](#jdbc20-autocreate-option)
+ [

## Client\$1ID
](#jdbc20-client_id-option)
+ [

## Client\$1Secret
](#jdbc20-client_secret-option)
+ [

## ClusterID
](#jdbc20-clusterid-option)
+ [

## 압축
](#jdbc20-compression-option)
+ [

## connectTimeout
](#jdbc20-connecttimeout-option)
+ [

## connectionTimezone
](#jdbc20-connecttimezone-option)
+ [

## databaseMetadataCurrentDbOnly
](#jdbc20-databasemetadatacurrentdbonly-option)
+ [

## DbUser
](#jdbc20-dbuser-option)
+ [

## DbGroups
](#jdbc20-dbgroups-option)
+ [

## DBNAME
](#jdbc20-dbname-option)
+ [

## defaultRowFetchSize
](#jdbc20-defaultrowfetchsize-option)
+ [

## DisableIsValidQuery
](#jdbc20-disableisvalidquery-option)
+ [

## enableFetchRingBuffer
](#jdbc20-enablefetchringbuffer-option)
+ [

## enableMultiSqlSupport
](#jdbc20-enablemultisqlsupport-option)
+ [

## fetchRingBufferSize
](#jdbc20-fetchringbuffersize-option)
+ [

## ForceLowercase
](#jdbc20-forcelowercase-option)
+ [

## groupFederation
](#jdbc20-groupFederation-option)
+ [

## HOST
](#jdbc20-host-option)
+ [

## IAMDisableCache
](#jdbc20-iamdisablecache-option)
+ [

## IAMDuration
](#jdbc20-iamduration-option)
+ [

## Idc\$1Client\$1Display\$1Name
](#jdbc20-idc_client_display_name)
+ [

## Idc\$1Region
](#jdbc20-idc_region)
+ [

## IdP\$1Host
](#jdbc20-idp_host-option)
+ [

## IdP\$1Partition
](#jdbc20-idp_partition-option)
+ [

## IdP\$1Port
](#jdbc20-idp_port-option)
+ [

## IdP\$1Tenant
](#jdbc20-idp_tenant-option)
+ [

## IdP\$1Response\$1Timeout
](#jdbc20-idp_response_timeout-option)
+ [

## INIFILE
](#jdbc20-inifile-option)
+ [

## IniSection
](#jdbc20-inisection-option)
+ [

## isServerless
](#jdbc20-isserverless-option)
+ [

## Issuer\$1Url
](#jdbc20-issuer-url)
+ [

## Listen\$1Port
](#jdbc20-listen-port)
+ [

## Login\$1URL
](#jdbc20-login_url-option)
+ [

## loginTimeout
](#jdbc20-logintimeout-option)
+ [

## loginToRp
](#jdbc20-logintorp-option)
+ [

## LogLevel
](#jdbc20-loglevel-option)
+ [

## LogPath
](#jdbc20-logpath-option)
+ [

## OverrideSchemaPatternType
](#jdbc20-override-schema-pattern-type)
+ [

## Partner\$1SPID
](#jdbc20-partner_spid-option)
+ [

## 암호
](#jdbc20-password-option)
+ [

## Plugin\$1Name
](#jdbc20-plugin_name-option)
+ [

## PORT
](#jdbc20-port-option)
+ [

## Preferred\$1Role
](#jdbc20-preferred_role-option)
+ [

## 프로필
](#jdbc20-profile-option)
+ [

## PWD
](#jdbc20-pwd-option)
+ [

## queryGroup
](#jdbc20-querygroup-option)
+ [

## readOnly
](#jdbc20-readonly-option)
+ [

## 리전
](#jdbc20-region-option)
+ [

## reWriteBatchedInserts
](#jdbc20-rewritebatchedinserts-option)
+ [

## reWriteBatchedInsertsSize
](#jdbc20-rewritebatchedinsertssize-option)
+ [

## roleArn
](#jdbc20-rolearn-option)
+ [

## roleSessionName
](#jdbc20-roleaessionname-option)
+ [

## 범위
](#jdbc20-scope-option)
+ [

## SecretAccessKey
](#jdbc20-secretaccesskey-option)
+ [

## SessionToken
](#jdbc20-sessiontoken-option)
+ [

## serverlessAcctId
](#jdbc20-serverlessacctid-option)
+ [

## serverlessWorkGroup
](#jdbc20-serverlessworkgroup-option)
+ [

## socketFactory
](#jdbc20-socketfactory-option)
+ [

## socketTimeout
](#jdbc20-sockettimeout-option)
+ [

## SSL
](#jdbc20-ssl-option)
+ [

## SSL\$1Insecure
](#jdbc20-ssl_insecure-option)
+ [

## SSLCert
](#jdbc20-sslcert-option)
+ [

## SSLFactory
](#jdbc20-sslfactory-option)
+ [

## SSLKey
](#jdbc20-sslkey-option)
+ [

## SSLMode
](#jdbc20-sslmode-option)
+ [

## SSLPassword
](#jdbc20-sslpassword-option)
+ [

## SSLRootCert
](#jdbc20-sslrootcert-option)
+ [

## StsEndpointUrl
](#jdbc20-stsendpointurl-option)
+ [

## tcpKeepAlive
](#jdbc20-tcpkeepalive-option)
+ [

## 토큰
](#jdbc20-token-option)
+ [

## token\$1type
](#jdbc20-token-type-option)
+ [

## UID
](#jdbc20-uid-option)
+ [

## User
](#jdbc20-user-option)
+ [

## webIdentityToken
](#jdbc20-webidentitytoken-option)

## AccessKeyID
<a name="jdbc20-accesskeyid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

이 파라미터를 지정하여 사용자 또는 역할에 대한 IAM 액세스 키를 입력할 수 있습니다. 일반적으로 기존 문자열 또는 사용자 프로파일을 보고 키를 찾을 수 있습니다. 이 파라미터를 지정할 경우 `SecretAccessKey` 파라미터도 지정해야 합니다. JDBC URL에 전달된 경우 AccessKeyID는 URL 인코딩되어야 합니다.

이 파라미터는 선택 사항입니다.

## AllowDBUserOverride
<a name="jdbc20-allowdbuseroverride-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 문자열

이 옵션은 드라이버가 SAML 어설션의 `DbUser` 값을 사용하는지 아니면 연결 URL의 `DbUser` 연결 속성에 지정된 값을 사용하는지를 지정합니다.

이 파라미터는 선택 사항입니다.

**1**  
드라이버가 SAML 어설션의 `DbUser` 값을 사용합니다.  
SAML 어설션이 `DBUser`에 대한 값을 지정하지 않으면 드라이버가 `DBUser` 연결 속성에 지정된 값을 사용합니다. 연결 속성도 값을 지정하지 않으면 드라이버가 연결 프로파일에 지정된 값을 사용합니다.

**0**  
드라이버가 `DBUser` 연결 속성에 지정된 `DBUser` 값을 사용합니다.  
`DBUser` 연결 속성이 값을 지정하지 않으면 드라이버가 연결 프로파일에 지정된 값을 사용합니다. 연결 프로파일도 값을 지정하지 않으면 드라이버가 SAML 어설션의 값을 사용합니다.

## App\$1ID
<a name="jdbc20-app-id-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift 애플리케이션과 연결된 Okta 제공 고유 ID입니다.

Okta 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## App\$1Name
<a name="jdbc20-app-name-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 대한 연결을 인증하는 데 사용하는 Okta 애플리케이션의 이름입니다.

이 파라미터는 선택 사항입니다.

## ApplicationName
<a name="jdbc20-applicationname-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

감사 목적으로 Amazon Redshift에 전달할 애플리케이션의 이름입니다.

이 파라미터는 선택 사항입니다.

## AuthProfile
<a name="jdbc20-authprofile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 연결하는 데 사용할 인증 프로파일의 이름입니다.

이 파라미터는 선택 사항입니다.

## AutoCreate
<a name="jdbc20-autocreate-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션은 지정된 사용자가 없을 때 드라이버가 새 사용자를 생성하도록 하는지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
`DBUser` 또는 고유 ID(UID)로 지정된 사용자가 없으면 해당 이름의 사용자가 새로 생성됩니다.

**false**  
드라이버로 인해 새 사용자가 생성되지는 않습니다. 지정된 사용자가 없으면 인증에 실패합니다.

## Client\$1ID
<a name="jdbc20-client_id-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Azure AD 서비스를 사용하여 연결을 인증할 때 사용할 클라이언트 ID입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## Client\$1Secret
<a name="jdbc20-client_secret-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Azure AD 서비스를 사용하여 연결을 인증할 때 사용할 클라이언트 암호입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## ClusterID
<a name="jdbc20-clusterid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

연결하려는 Amazon Redshift 클러스터의 이름입니다. 드라이버는 지정된 호스트에서 이 파라미터를 감지하려고 시도합니다. Network Load Balancer(NLB)를 사용하며 IAM을 통해 연결하는 경우, 드라이버가 이를 감지하지 못하므로 이 연결 옵션을 사용하여 설정할 수 있습니다.

이 파라미터는 선택 사항입니다.

## 압축
<a name="jdbc20-compression-option"></a>
+ **기본값** - 끄기
+ **데이터 형식** – 문자열

Amazon Redshift 서버와 클라이언트 또는 드라이버 간의 유선 프로토콜 통신에 사용되는 압축 방법입니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.
+ **lz4**

  Amazon Redshift와의 유선 프로토콜 통신에 사용되는 압축 방법을 lz4로 설정합니다.
+ **꺼짐**

  Amazon Redshift와의 유선 프로토콜 통신에 압축을 사용하지 않습니다.

## connectTimeout
<a name="jdbc20-connecttimeout-option"></a>
+ **기본값** - 10
+ **데이터 형식** – 정수

소켓 연결 작업에 사용할 제한 시간 값입니다. Amazon Redshift 연결을 설정하는 데 필요한 시간이 이 값을 초과하면 연결을 사용할 수 없는 것으로 간주됩니다. 제한 시간은 초 단위로 지정됩니다. 값이 0이면 제한 시간을 지정하지 않는 것입니다.

이 파라미터는 선택 사항입니다.

## connectionTimezone
<a name="jdbc20-connecttimezone-option"></a>
+ **기본값** – LOCAL
+ **데이터 형식** – 문자열

세션 수준 시간대입니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**LOCAL**  
세션 수준 시간대를 LOCAL JVM 시간대로 구성합니다.

**SERVER**  
Amazon Redshift 서버에서 사용자에 대해 설정된 시간대로 세션 수준 시간대를 구성합니다. 다음 명령으로 사용자에 대한 세션 수준 시간대를 구성할 수 있습니다.  

```
ALTER USER
[...]
SET TIMEZONE TO [...];
```

## databaseMetadataCurrentDbOnly
<a name="jdbc20-databasemetadatacurrentdbonly-option"></a>
+ **기본값** – true
+ **데이터 형식** – 부울

이 옵션은 메타데이터 API가 액세스 가능한 모든 데이터베이스에서 데이터를 검색할지 아니면 연결된 데이터베이스에서만 데이터를 검색할지를 지정합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**true**  
애플리케이션이 단일 데이터베이스에서 메타데이터를 검색합니다.

**false**  
애플리케이션이 액세스 가능한 모든 데이터베이스에서 메타데이터를 검색합니다.

## DbUser
<a name="jdbc20-dbuser-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift 계정에 사용할 사용자 ID입니다. AutoCreate 속성을 사용하도록 설정한 경우 현재 존재하지 않는 ID를 사용할 수 있습니다.

이 파라미터는 선택 사항입니다.

## DbGroups
<a name="jdbc20-dbgroups-option"></a>
+ **기본값** – PUBLIC
+ **데이터 형식** – 문자열

`DBUser`가 현재 세션에 대해 조인하는 기존 데이터베이스 그룹 이름의 쉼표로 구분된 목록입니다.

이 파라미터는 선택 사항입니다.

## DBNAME
<a name="jdbc20-dbname-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

연결할 데이터베이스의 이름입니다. 이 옵션을 사용하여 JDBC 연결 URL에 데이터베이스 이름을 지정할 수 있습니다.

이 파라미터는 필수 사항입니다. 연결 URL 또는 클라이언트 애플리케이션의 연결 속성에 데이터베이스 이름을 지정해야 합니다.

## defaultRowFetchSize
<a name="jdbc20-defaultrowfetchsize-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

이 옵션은 getFetchSize의 기본값을 지정합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**0**  
단일 작업으로 모든 행을 가져옵니다.

**양의 정수**  
ResultSet의 각 가져오기 반복에 대해 데이터베이스에서 가져올 행 수입니다.

## DisableIsValidQuery
<a name="jdbc20-disableisvalidquery-option"></a>
+ **기본값** – False
+ **데이터 형식** – 부울

이 옵션은 Connection.isValid () 메서드를 사용하여 데이터베이스 연결이 활성 상태인지 여부를 확인할 때 드라이버가 새 데이터베이스 쿼리를 제출할지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
드라이버가 Connection.isValid()를 사용하여 데이터베이스 연결이 활성 상태인지 여부를 확인할 때 쿼리를 제출하지 않습니다. 이로 인해 데이터베이스 서버가 예기치 않게 종료된 경우 드라이버가 데이터베이스 연결을 활성 상태로 잘못 식별할 수 있습니다.

**false**  
드라이버가 Connection.isValid()를 사용하여 데이터베이스 연결이 활성 상태인지 여부를 확인할 때 쿼리를 제출합니다.

## enableFetchRingBuffer
<a name="jdbc20-enablefetchringbuffer-option"></a>
+ **기본값** – true
+ **데이터 형식** – 부울

이 옵션은 드라이버가 별도의 스레드에서 링 버퍼를 사용하여 행을 가져오도록 지정합니다. fetchRingBufferSize 파라미터는 링 버퍼 크기를 지정합니다.

링 버퍼는 JDBC에서 자동 메모리 관리를 구현하여 데이터 검색 작업 중에 메모리 부족(OOM) 오류를 방지합니다. 링 버퍼는 버퍼링된 데이터의 실제 크기를 실시간으로 모니터링하여 드라이버의 총 메모리 사용량이 정의된 한도 내에 있도록 합니다. 버퍼 용량에 도달하면 드라이버가 데이터 가져오기 작업을 일시 중지하여 수동 개입 없이 메모리 오버플로를 방지합니다. 이 내장 보호 기능은 사용자의 구성 없이도 OOM 오류를 자동으로 제거합니다.

트랜잭션이 세미콜론으로 구분된 여러 SQL 명령이 포함된 명령문을 감지하면 해당 트랜잭션의 페치 링 버퍼가 거짓으로 설정됩니다. enableFetchRingBuffer의 값은 변경되지 않습니다.

이 파라미터는 선택 사항입니다.

**참고**  
링 버퍼가 비활성화되고 가져오기 크기가 제대로 구성되지 않은 경우 메모리 부족(OOM) 문제가 발생할 수 있습니다. 가져오기 크기 구성에 대한 자세한 내용은 [여기](https://docs.aws.amazon.com/redshift/latest/dg/set-the-JDBC-fetch-size-parameter.html)를 참조하세요.

## enableMultiSqlSupport
<a name="jdbc20-enablemultisqlsupport-option"></a>
+ **기본값** – true
+ **데이터 형식** – 부울

이 옵션은 Statement에서 세미콜론으로 구분된 여러 SQL 명령을 처리할지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**true**  
드라이버가 Statement 객체에서 세미콜론으로 구분된 여러 SQL 명령을 처리합니다.

**false**  
드라이버가 단일 Statement에서 여러 SQL 명령에 대한 오류를 반환합니다.

## fetchRingBufferSize
<a name="jdbc20-fetchringbuffersize-option"></a>
+ **기본값** – 1G
+ **데이터 형식** – 문자열

이 옵션은 결과 집합을 가져오는 동안 사용되는 링 버퍼의 크기를 지정합니다. 크기를 바이트 단위로 지정할 수 있습니다(예: 1KB의 경우 1K, 5,000바이트의 경우 5000, 1MB의 경우 1M, 1GB의 경우 1G). 또한 힙 메모리의 비율을 지정할 수 있습니다. 드라이버는 제한에 도달하면 행 가져오기를 중지합니다. 애플리케이션이 행을 읽고 링 버퍼의 공간을 확보하면 가져오기가 다시 시작됩니다.

이 파라미터는 선택 사항입니다.

## ForceLowercase
<a name="jdbc20-forcelowercase-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션은 드라이버가 Single Sign-On 인증을 사용할 때 자격 증명 공급자에서 Amazon Redshift로 전송된 모든 데이터베이스 그룹(DbGroups)을 소문자로 표시할지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
드라이버가 ID 공급자에서 전송된 모든 데이터베이스 그룹을 소문자로 표시합니다.

**false**  
드라이버가 데이터베이스 그룹을 변경하지 않습니다.

## groupFederation
<a name="jdbc20-groupFederation-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션은 Amazon Redshift IDP 그룹을 사용할지 여부를 지정합니다. 이 옵션은 GetClusterCredentialsV2 API에서 지원됩니다.

이 파라미터는 선택 사항입니다.

**true**  
Amazon Redshift IDP(자격 증명 공급자) 그룹을 사용합니다.

**false**  
사용자 페더레이션을 위해 STS API 및 GetClusterCredentials를 사용하고 연결을 위해 DbGroups를 명시적으로 지정합니다.

## HOST
<a name="jdbc20-host-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

연결할 Amazon Redshift 서버의 호스트 이름입니다. 이 옵션을 사용하여 JDBC 연결 URL에 호스트 이름을 지정할 수 있습니다.

이 파라미터는 필수 사항입니다. 연결 URL 또는 클라이언트 애플리케이션의 연결 속성에 호스트 이름을 지정해야 합니다.

## IAMDisableCache
<a name="jdbc20-iamdisablecache-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션은 IAM 자격 증명이 캐시되는지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
IAM 자격 증명이 캐시되지 않습니다.

**false**  
IAM 자격 증명이 캐시되지 않습니다. 예를 들어 API 게이트웨이에 대한 요청이 제한될 때 성능이 향상됩니다.

## IAMDuration
<a name="jdbc20-iamduration-option"></a>
+ **기본값** – 900
+ **데이터 형식** – 정수

임시 IAM 자격 증명이 만료될 때까지 남은 시간(초)입니다.
+ **최솟값** – 900
+ **최댓값 **– 3,600

이 파라미터는 선택 사항입니다.

## Idc\$1Client\$1Display\$1Name
<a name="jdbc20-idc_client_display_name"></a>
+ **기본값** - Amazon Redshift JDBC 드라이버
+ **데이터 형식** – 문자열

BrowserIdcAuthPlugin을 사용하는 클라이언트에 사용할 표시 이름입니다.

이 파라미터는 선택 사항입니다.

## Idc\$1Region
<a name="jdbc20-idc_region"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IAM Identity Center 인스턴스가 위치한 AWS 리전입니다.

이 파라미터는 plugin\$1name 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## IdP\$1Host
<a name="jdbc20-idp_host-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 인증하는 데 사용하는 자격 증명 공급자(IdP) 호스트입니다. 연결 문자열이나 프로파일에 지정할 수 있습니다.

이 파라미터는 선택 사항입니다.

## IdP\$1Partition
<a name="jdbc20-idp_partition-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

ID 제공업체(IdP)가 구성된 클라우드 파티션을 지정합니다. 드라이버가 연결하는 IdP 인증 엔드포인트를 결정합니다.

이 파라미터를 비워 두면 드라이버는 기본적으로 상용 파티션으로 설정됩니다. 가능한 값은 다음과 같습니다.
+  `us-gov`: IdP가 Azure Government에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD Government는 `login.microsoftonline.us` 엔드포인트를 사용합니다.
+  `cn`: IdP가 중국 클라우드 파티션에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD China는 `login.chinacloudapi.cn` 엔드포인트를 사용합니다.

이 파라미터는 선택 사항입니다.

## IdP\$1Port
<a name="jdbc20-idp_port-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

자격 증명 공급자(IdP)가 사용하는 포트입니다. 연결 문자열이나 프로파일에 포트를 지정할 수 있습니다. 기본 포트는 5439입니다. 클러스터를 생성, 수정 또는 마이그레이션할 때 선택한 포트에 따라 선택한 포트에 대한 액세스를 허용합니다.

이 파라미터는 선택 사항입니다.

## IdP\$1Tenant
<a name="jdbc20-idp_tenant-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift 애플리케이션의 Azure AD 테넌트 ID입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## IdP\$1Response\$1Timeout
<a name="jdbc20-idp_response_timeout-option"></a>
+ **기본값** – 120
+ **데이터 형식** – 정수

브라우저 플러그인을 통해 SAML 또는 Azure AD 서비스를 사용할 때 드라이버가 자격 증명 공급자의 SAML 응답을 기다리는 시간(초)입니다.

이 파라미터는 선택 사항입니다.

## INIFILE
<a name="jdbc20-inifile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

파일 이름을 포함한 .ini 파일의 전체 경로입니다. 예:

```
IniFile="C:\tools\rsjdbc.ini"
```

.ini 파일에 대한 자세한 내용은 [JDBC 드라이버 버전 2.x용 초기화(.ini) 파일 생성](jdbc20-ini-file.md) 섹션을 참조하세요.

이 파라미터는 선택 사항입니다.

## IniSection
<a name="jdbc20-inisection-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

구성 옵션을 포함하는.ini 파일의 섹션 이름입니다. .ini 파일에 대한 자세한 내용은 [JDBC 드라이버 버전 2.x용 초기화(.ini) 파일 생성](jdbc20-ini-file.md) 섹션을 참조하세요.

다음 예에서는 .ini 파일의 [Prod] 섹션을 지정합니다.

```
IniSection="Prod"
```

이 파라미터는 선택 사항입니다.

## isServerless
<a name="jdbc20-isserverless-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션은 Amazon Redshift 엔드포인트 호스트가 서버리스 인스턴스인지 여부를 지정합니다. 드라이버는 지정된 호스트에서 이 파라미터를 감지하려고 시도합니다. Network Load Balancer(NLB)를 사용하는 경우 드라이버가 이를 감지하지 못하므로, 여기에서 설정하면 됩니다.

이 파라미터는 선택 사항입니다.

**true**  
Amazon Redshift 엔드포인트 호스트가 서버리스 인스턴스입니다.

**false**  
Amazon Redshift 엔드포인트 호스트가 프로비저닝된 클러스터입니다.

## Issuer\$1Url
<a name="jdbc20-issuer-url"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center 서버의 인스턴스 엔드포인트를 가리킵니다.

이 파라미터는 plugin\$1name 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## Listen\$1Port
<a name="jdbc20-listen-port"></a>
+ **기본값** – 7890
+ **데이터 형식** – 정수

드라이버가 브라우저 플러그인을 통해 SAML, Azure AD 또는 AWS IAM Identity Center 서비스를 사용할 때 ID 제공업체 또는 권한 부여 코드로부터 SAML 응답을 받는 데 사용하는 포트입니다.

이 파라미터는 선택 사항입니다.

## Login\$1URL
<a name="jdbc20-login_url-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

브라우저 플러그인을 통해 SAML 또는 Azure AD 서비스를 사용할 때 자격 증명 공급자의 웹 사이트에 있는 리소스의 URL입니다.

브라우저 플러그인을 통해 SAML 또는 Azure AD 서비스로 인증하는 경우 이 파라미터는 필수입니다.

## loginTimeout
<a name="jdbc20-logintimeout-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

서버에 연결하고 인증하면서 시간 제한이 지날 때까지 대기하는 시간(초)입니다. 연결 구성이 이 제한 시간보다 어래 걸리면 연결이 중단됩니다.

이 속성이 0으로 설정되는 경우에는 연결 시간 제한이 없습니다.

이 파라미터는 선택 사항입니다.

## loginToRp
<a name="jdbc20-logintorp-option"></a>
+ **기본값** – `urn:amazon:webservices`
+ **데이터 형식** – 문자열

AD FS 인증 유형에 사용할 신뢰 당사자 트러스트입니다.

이 파라미터는 선택 사항입니다.

## LogLevel
<a name="jdbc20-loglevel-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

이 속성을 사용하여 드라이버에서 로깅을 설정하거나 해제하고 로그 파일에 포함되는 세부 정보의 양을 지정합니다.

문제를 포착할 수 있을 만큼만 로깅을 사용합니다. 로깅은 성능을 떨어뜨릴 뿐만 아니라 대용량의 디스크 공간을 소비할 수 있기 때문입니다.

이 파라미터는 선택 사항입니다.

파라미터를 다음 값 중 하나로 설정합니다.

**0**  
모든 로깅을 사용 중지합니다.

**1**  
드라이버를 중단시키는 매우 심각한 오류 이벤트를 로그하는 FATAL 수준에서 로깅을 사용합니다.

**2**  
드라이버가 계속 실행될 수 있는 오류 이벤트를 로그하는 ERROR 수준에서 로깅을 사용합니다.

**3**  
작업을 수행하지 않으면 오류가 발생할 수 있는 이벤트를 로그하는 WARNING 수준에서 로깅을 사용합니다.

**4**  
드라이버의 진행 상황을 설명하는 일반 정보를 로그하는 INFO 수준에서 로깅을 사용합니다.

**5**  
드라이버 디버깅에 유용한 세부 정보를 로그하는 DEBUG 수준에서 로깅을 사용합니다.

**6**  
모든 드라이버 활동을 로그하는 TRACE 수준에서 로깅을 사용합니다.

로깅을 사용하면 드라이버가 `LogPath` 속성에 지정된 위치에 다음 로그 파일을 생성합니다.
+ ** `redshift_jdbc.log`** – 연결과 관련되지 않은 드라이버 활동을 로그하는 파일입니다.
+ **`redshift_jdbc_connection_[Number].log`** – 각 데이터베이스 연결에 대한 파일입니다. 여기서 `[Number]`는 각 로그 파일을 다른 로그 파일과 구별하는 숫자입니다. 이 파일은 연결과 관련된 드라이버 활동을 로그합니다.

LogPath 값이 유효하지 않으면 드라이버가 로그된 정보를 표준 출력 스트림인 `System.out`으로 전송합니다.

## LogPath
<a name="jdbc20-logpath-option"></a>
+ **기본값** – 현재 작업 디렉터리.
+ **데이터 형식** – 문자열

DSILogLevel 속성을 사용할 때 드라이버가 로그 파일을 저장하는 폴더의 전체 경로입니다.

연결 URL이 모든 JDBC 애플리케이션과 호환되는지 확인하려면 다른 백슬래시를 입력하여 파일 경로에서 백슬래시(\$1)를 이스케이프 처리하는 것이 좋습니다.

이 파라미터는 선택 사항입니다.

## OverrideSchemaPatternType
<a name="jdbc20-override-schema-pattern-type"></a>
+ **기본값** – null
+ **데이터 형식** – 정수

이 옵션은 getTables 호출에 사용하는 쿼리 유형을 재정의할지 여부를 지정합니다.

**0**  
스키마 없는 범용 쿼리

**1**  
로컬 스키마 쿼리

**2**  
외부 스키마 쿼리

이 파라미터는 선택 사항입니다.

## Partner\$1SPID
<a name="jdbc20-partner_spid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

PingFederate 서비스를 사용하여 연결을 인증할 때 사용할 파트너 SPID(서비스 공급자 ID) 값입니다.

이 파라미터는 선택 사항입니다.

## 암호
<a name="jdbc20-password-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IDP를 통해 IAM 인증을 사용하여 연결할 때 IDP\$1Host 서버의 암호입니다. 표준 인증을 사용할 때 Amazon Redshift 데이터베이스 암호에 PWD 대신 사용할 수 있습니다.

이 파라미터는 선택 사항입니다.

## Plugin\$1Name
<a name="jdbc20-plugin_name-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

특정 자격 증명 공급자 플러그인을 구현하기 위한 정규화된 클래스 이름입니다.

이 파라미터는 선택 사항입니다.

다음과 같은 공급자 옵션이 지원됩니다.
+ **`AdfsCredentialsProvider`** – Active Directory Federation Service입니다.
+ **`AzureCredentialsProvider`** – Microsoft Azure Active Directory(AD) Service입니다.
+ **`BasicJwtCredentialsProvider`** – JSON Web Tokens (JWT) Service입니다.
+ **`BasicSamlCredentialsProvider`** - 많은 SAML 서비스 공급자와 함께 사용할 수 있는 SAML(Security Assertion Markup Language) 자격 증명입니다.
+ **`BrowserAzureCredentialsProvider`** – Browser Microsoft Azure Active Directory(AD) Service입니다.
+ **`BrowserAzureOAuth2CredentialsProvider` ** – 네이티브 인증용 Browser Microsoft Azure Active Directory(AD) Service입니다.
+ **`BrowserIdcAuthPlugin`** - AWS IAM Identity Center를 사용하는 인증 플러그인입니다.
+ **`BrowserSamlCredentialsProvider`** – Okta, Ping, ADFS 등의 SAML 서비스용 Browser SAML입니다.
+ **`IdpTokenAuthPlugin`** – AWS IAM Identity Center 토큰 또는 AWS IAM Identity Center에 연결된 웹 ID 제공업체의 OpenID Connect(OIDC) JSON 기반 자격 증명 토큰(JWT)을 수락하는 권한 부여 플러그인입니다.
+ **`OktaCredentialsProvider`** – Okta Service입니다.
+ **`PingCredentialsProvider`** – PingFederate Service입니다.

## PORT
<a name="jdbc20-port-option"></a>
+ **기본값** – null
+ **데이터 형식** – 정수

연결할 Amazon Redshift 서버의 포트입니다. 이 옵션을 사용하여 JDBC 연결 URL에 포트를 지정할 수 있습니다.

이 파라미터는 선택 사항입니다.

## Preferred\$1Role
<a name="jdbc20-preferred_role-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 연결하는 동안 수임하려는 IAM 역할입니다.

이 파라미터는 선택 사항입니다.

## 프로필
<a name="jdbc20-profile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IAM 인증에 사용할 프로파일의 이름입니다. 이 프로파일에는 연결 문자열에 지정되지 않은 추가 연결 속성이 포함되어 있습니다.

이 파라미터는 선택 사항입니다.

## PWD
<a name="jdbc20-pwd-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

속성 UID를 사용하여 제공한 Amazon Redshift 사용자 이름에 해당하는 암호입니다.

이 파라미터는 선택 사항입니다.

## queryGroup
<a name="jdbc20-querygroup-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

이 옵션은 적절한 쿼리 그룹에 쿼리를 할당하여 런타임에 쿼리를 대기열에 할당합니다. 쿼리 그룹이 세션에 대해 설정됩니다. 연결에서 실행되는 모든 쿼리는 이 쿼리 그룹에 속합니다.

이 파라미터는 선택 사항입니다.

## readOnly
<a name="jdbc20-readonly-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 속성은 드라이버가 읽기 전용 모드인지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
연결이 읽기 전용 모드이며 데이터 스토어에 쓸 수 없습니다.

**false**  
연결이 읽기 전용 모드가 아니며 데이터 스토어에 쓸 수 있습니다.

## 리전
<a name="jdbc20-region-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

이 옵션은 클러스터가 위치한 AWS 리전을 지정합니다. StsEndPoint 옵션을 지정하면 리전 옵션이 무시됩니다. Redshift `GetClusterCredentials` API 작업도 리전 옵션을 사용합니다.

이 파라미터는 선택 사항입니다.

## reWriteBatchedInserts
<a name="jdbc20-rewritebatchedinserts-option"></a>
+ **기본값** – false
+ **데이터 형식** – 부울

이 옵션을 사용하면 최적화를 통해 호환 가능한 INSERT 문을 다시 작성하고 배치로 결합할 수 있습니다.

이 파라미터는 선택 사항입니다.

## reWriteBatchedInsertsSize
<a name="jdbc20-rewritebatchedinsertssize-option"></a>
+ **기본값** – 128
+ **데이터 형식** – 정수

이 옵션을 사용하면 최적화를 통해 호환 가능한 INSERT 문을 다시 작성하고 배치로 결합할 수 있습니다. 이 값은 2의 거듭제곱으로 기하급수적으로 증가해야 합니다.

이 파라미터는 선택 사항입니다.

## roleArn
<a name="jdbc20-rolearn-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

역할의 Amazon 리소스 이름(ARN)입니다. Plugin\$1Name 옵션에 BasicJwtCredentialsProvider를 지정할 때 이 파라미터를 지정해야 합니다. 다음 형식으로 ARN을 지정합니다.

`arn:partition:service:region:account-id:resource-id`

Plugin\$1Name 옵션에 BasicJwtCredentialsProvider를 지정하는 경우 이 파라미터는 필수입니다.

## roleSessionName
<a name="jdbc20-roleaessionname-option"></a>
+ **기본값** – jwt\$1redshift\$1session
+ **데이터 형식** – 문자열

맡은 역할 세션의 식별자입니다. 일반적으로 애플리케이션 사용자와 연결된 이름 또는 식별자를 전달합니다. 애플리케이션에서 사용하는 임시 보안 자격 증명은 해당 사용자와 연결됩니다. Plugin\$1Name 옵션에 BasicJwtCredentialsProvider를 지정할 때 이 파라미터를 지정할 수 있습니다.

이 파라미터는 선택 사항입니다.

## 범위
<a name="jdbc20-scope-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

사용자가 동의할 수 있는 공백으로 구분된 범위 목록입니다. Microsoft Azure 애플리케이션이 해당 사용자가 호출하려는 API에 대한 동의를 얻을 수 있도록 이 파라미터를 지정합니다. Plugin\$1Name 옵션에 BrowserAzureOAuth2CredentialsProvider를 지정할 때 이 파라미터를 지정할 수 있습니다.

이 파라미터는 BrowserAzureOAuth2CredentialsProvider 플러그인에 반드시 필요합니다.

## SecretAccessKey
<a name="jdbc20-secretaccesskey-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

사용자 또는 역할에 대한 IAM 액세스 키입니다. 이 파라미터를 지정하는 경우 AccessKeyID도 지정해야 합니다. JDBC URL에 전달된 SecretAccessKey는 URL 인코딩되어야 합니다.

이 파라미터는 선택 사항입니다.

## SessionToken
<a name="jdbc20-sessiontoken-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

인증에 사용하는 IAM 역할과 연결된 임시 IAM 세션 토큰입니다. JDBC URL에 전달된 경우 임시 IAM 세션 토큰은 URL 인코딩되어야 합니다.

이 파라미터는 선택 사항입니다.

## serverlessAcctId
<a name="jdbc20-serverlessacctid-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

Amazon Redshift Serverless 계정 ID입니다. 드라이버는 지정된 호스트에서 이 파라미터를 감지하려고 시도합니다. Network Load Balancer(NLB)를 사용하는 경우 드라이버가 이를 감지하지 못하므로, 여기에서 설정하면 됩니다.

이 파라미터는 선택 사항입니다.

## serverlessWorkGroup
<a name="jdbc20-serverlessworkgroup-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

Amazon Redshift Serverless 작업 그룹 이름입니다. 드라이버는 지정된 호스트에서 이 파라미터를 감지하려고 시도합니다. Network Load Balancer(NLB)를 사용하는 경우 드라이버가 이를 감지하지 못하므로, 여기에서 설정하면 됩니다.

이 파라미터는 선택 사항입니다.

## socketFactory
<a name="jdbc20-socketfactory-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

이 옵션은 소켓 생성을 위한 소켓 팩토리를 지정합니다.

이 파라미터는 선택 사항입니다.

## socketTimeout
<a name="jdbc20-sockettimeout-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

소켓 읽기 작업에서 제한 시간이 지날 때까지 대기하는 시간(초)입니다. 작업이 이 임계값보다 오래 걸리면 연결이 닫힙니다. 이 속성이 0으로 설정되는 경우에는 연결 시간 제한이 없습니다.

이 파라미터는 선택 사항입니다.

## SSL
<a name="jdbc20-ssl-option"></a>
+ **기본값** – TRUE
+ **데이터 형식** – 문자열

이 속성을 사용하여 연결에 SSL을 설정하거나 해제합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**TRUE**  
드라이버가 SSL을 통해 서버에 연결합니다.

**FALSE**  
드라이버가 SSL을 사용하지 않고 서버에 연결합니다. IAM 인증에서는 이 옵션이 지원되지 않습니다.

또는 AuthMech 속성을 구성할 수 있습니다.

## SSL\$1Insecure
<a name="jdbc20-ssl_insecure-option"></a>
+ **기본값** – true
+ **데이터 형식** – 문자열

이 속성은 IDP 호스트 서버 인증서를 확인해야 하는지 여부를 나타냅니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**true**  
드라이버가 IDP 서버 인증서의 신뢰성을 확인하지 않습니다.

**false**  
드라이버가 IDP 서버 인증서의 신뢰성을 확인합니다.

## SSLCert
<a name="jdbc20-sslcert-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

SSL 사용 시 Amazon Redshift 서버 인스턴스 확인을 위한 신뢰할 수 있는 추가 CA 인증서가 포함된 .pem 또는 .crt 파일의 전체 경로입니다.

SSLKey가 지정된 경우 이 파라미터는 필수입니다.

## SSLFactory
<a name="jdbc20-sslfactory-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

서버 인증서를 사용하지 않고 TLS/SSL을 통해 서버에 연결할 때 사용할 SSL 팩토리입니다.

## SSLKey
<a name="jdbc20-sslkey-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

SSLCert에 지정된 인증서 확인을 위한 PKCS8 키 파일이 포함된.der 파일의 전체 경로입니다.

SSLCert가 지정된 경우 이 파라미터는 필수입니다.

## SSLMode
<a name="jdbc20-sslmode-option"></a>
+ **기본값** – verify-ca
+ **데이터 형식** – 문자열

이 속성을 사용하여 TLS/SSL 사용 시 드라이버가 인증서를 검증하는 방법을 지정합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**[verify-ca]**  
드라이버가 신뢰할 수 있는 인증 기관(CA)에서 인증서를 제공하는지 확인합니다.

**[verify-full]**  
드라이버가 신뢰할 수 있는 CA에서 인증서를 제공하고 인증서의 호스트 이름이 연결 URL에 지정된 호스트 이름과 일치하는지 확인합니다.

## SSLPassword
<a name="jdbc20-sslpassword-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 문자열

SSLKey에 지정된 암호화된 키 파일의 암호입니다.

SSLKey가 지정되고 키 파일이 암호화된 경우 이 파라미터는 필수입니다.

## SSLRootCert
<a name="jdbc20-sslrootcert-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

SSL 사용 시 Amazon Redshift 서버 인스턴스 확인을 위한 루트 CA 인증서가 포함된 .pem 또는 .crt 파일의 전체 경로입니다.

## StsEndpointUrl
<a name="jdbc20-stsendpointurl-option"></a>
+ **기본값** – null
+ **데이터 형식** – 문자열

AWS Security Token Service(AWS STS) 엔드포인트를 지정할 수 있습니다. 이 옵션을 지정하면 리전 옵션이 무시됩니다. 이 엔드포인트에는 보안 프로토콜(HTTPS)만 지정할 수 있습니다.

## tcpKeepAlive
<a name="jdbc20-tcpkeepalive-option"></a>
+ **기본값** – TRUE
+ **데이터 형식** – 문자열

이 속성을 사용하여 TCP KeepAlive를 설정하거나 해제합니다.

이 파라미터는 선택 사항입니다.

다음 값을 지정할 수 있습니다.

**TRUE**  
드라이버가 TCP KeepAlive를 사용하여 연결 시간 초과를 방지합니다.

**FALSE**  
드라이버가 TCP KeepAlive를 사용하지 않습니다.

## 토큰
<a name="jdbc20-token-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center에서 제공한 액세스 토큰 또는 AWS IAM Identity Center와 연결된 웹 ID 제공업체가 제공한 OpenID Connect(OIDC) JSON 웹 토큰(JWT)입니다. 애플리케이션은 AWS IAM Identity Center 또는 AWS IAM Identity Center와 연결된 자격 증명 공급자를 통해 애플리케이션 사용자를 인증하여 이 토큰을 생성해야 합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## token\$1type
<a name="jdbc20-token-type-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

`IdpTokenAuthPlugin`에서 사용되는 토큰 유형입니다.

다음 값을 지정할 수 있습니다.

**ACCESS\$1TOKEN**  
AWS IAM Identity Center에서 제공한 액세스 토큰을 사용하는 경우 이 값을 입력합니다.

**EXT\$1JWT**  
AWS IAM Identity Center와 통합된 웹 기반 ID 제공업체가 제공하는 OpenID Connect(OIDC) JSON 웹 토큰(JWT)을 사용하는 경우 이 값을 입력합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## UID
<a name="jdbc20-uid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

데이터베이스에 액세스하는 데 사용하는 데이터베이스 사용자 이름입니다.

이 파라미터는 필수 사항입니다.

## User
<a name="jdbc20-user-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IDP를 통해 IAM 인증을 사용하여 연결 시 idp\$1host 서버의 사용자 이름입니다. 표준 인증을 사용하는 경우 Amazon Redshift 데이터베이스 사용자 이름에 사용할 수 있습니다.

이 파라미터는 선택 사항입니다.

## webIdentityToken
<a name="jdbc20-webidentitytoken-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

자격 증명 공급자가 제공하는 OAuth 2.1 액세스 토큰 또는 OpenID Connect ID 토큰입니다. 애플리케이션에서 웹 자격 증명 공급자로 애플리케이션 사용자를 인증하여 이 토큰을 가져와야 합니다. Plugin\$1Name 옵션에 BasicJwtCredentialsProvider를 지정할 때 이 파라미터를 지정해야 합니다.

Plugin\$1Name 옵션에 BasicJwtCredentialsProvider를 지정하는 경우 이 파라미터는 필수입니다.

# JDBC 드라이버 버전 2.x의 이전 버전
<a name="jdbc20-previous-driver-version-20"></a>

도구에 특정 버전의 드라이버가 필요한 경우에만 Amazon Redshift JDBC 드라이버 버전 2.x의 이전 버전을 다운로드합니다.

다음은 이전의 JDBC 4.2 호환 JDBC 드라이버 버전 2.x 드라이버입니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip) 

# Amazon Redshift Python 커넥터
<a name="python-redshift-driver"></a>

Python용 Amazon Redshift 커넥터를 사용하면[AWS Python용 SDK(Boto3)](https://github.com/boto/boto3), pandas 및 Numerical Python(NumPy)과 작업을 통합할 수 있습니다. pandas에 대한 자세한 내용은 [pandas GitHub 리포지토리](https://github.com/pandas-dev/pandas)를 참조하세요. NumPy에 대한 자세한 내용은 [NumPy GitHub 리포지토리](https://github.com/numpy/numpy)를 참조하세요.

Amazon Redshift Python 커넥터는 오픈 소스 솔루션을 제공합니다. 소스 코드를 탐색하고, 개선 사항을 요청하고, 문제를 보고하고, 기여를 제공할 수 있습니다.

Amazon Redshift Python 커넥터를 사용하려면 Python 버전 3.6 이상이 있어야 합니다. 자세한 내용은 [Amazon Redshift Python 드라이버 사용권 계약](https://github.com/aws/amazon-redshift-python-driver/blob/master/LICENSE)을 참조하세요.

Amazon Redshift Python 커넥터는 다음을 제공합니다.
+ AWS Identity and Access Management(IAM) 인증. 자세한 내용은 [Amazon Redshift의 Identity and Access Management](redshift-iam-authentication-access-control.md) 섹션을 참조하세요.
+ 페더레이션 API 액세스를 사용한 자격 증명 공급자 인증. 페더레이션 API 액세스는 다음과 같은 기업 자격 증명 공급자에 대해 지원됩니다.
  + Azure AD. 자세한 내용은 AWS 빅 데이터 블로그 게시물 [Federate Amazon Redshift access with Microsoft Azure AD single sign-on](https://aws.amazon.com/blogs/big-data/federate-amazon-redshift-access-with-microsoft-azure-ad-single-sign-on/)을 참조하세요.
  + Active Directory Federation Services. 자세한 내용은 AWS 빅 데이터 블로그 게시물 [Federate access to your Amazon Redshift cluster with Active Directory Federation Services (AD FS): Part 1](https://aws.amazon.com/blogs/big-data/federate-access-to-your-amazon-redshift-cluster-with-active-directory-federation-services-ad-fs-part-1/)을 참조하세요.
  + Okta. 자세한 내용은 AWS 빅 데이터 블로그 게시물 [Federate Amazon Redshift access with Okta as an identity provider](https://aws.amazon.com/blogs/big-data/federate-amazon-redshift-access-with-okta-as-an-identity-provider/)를 참조하세요.
  + PingFederate. 자세한 내용은 [PingFederate 사이트](https://www.pingidentity.com/en/software/pingfederate.html)를 참조하세요.
  + JumpCloud. 자세한 내용은 [JumpCloud 사이트](https://jumpcloud.com/)를 참조하세요.
+ Amazon Redshift 데이터 유형.

Amazon Redshift Python 커넥터는 Python Database API 사양 2.0을 구현합니다. 자세한 내용은 Python 웹 사이트의 [PEP 249—Python Database API Specification v2.0](https://www.python.org/dev/peps/pep-0249/)을 참조하세요.

**Topics**
+ [

# Amazon Redshift Python 커넥터 설치
](python-driver-install.md)
+ [

# Amazon Redshift Python 커넥터의 구성 옵션
](python-configuration-options.md)
+ [

# Python 커넥터 가져오기
](python-start-import.md)
+ [

# NumPy와 Python 커넥터 통합
](python-connect-integrate-numpy.md)
+ [

# pandas와 Python 커넥터 통합
](python-connect-integrate-pandas.md)
+ [

# 자격 증명 공급자 플러그인 사용
](python-connect-identity-provider-plugins.md)
+ [

# Amazon Redshift Python 커넥터 사용 예
](python-connect-examples.md)
+ [

# Amazon Redshift Python 커넥터용 API 참조
](python-api-reference.md)

# Amazon Redshift Python 커넥터 설치
<a name="python-driver-install"></a>

다음 방법을 사용하여 Amazon Redshift Python 커넥터를 설치할 수 있습니다.
+ Python 패키지 인덱스(PyPi)
+ Conda
+ GitHub 리포지토리 복제

## PyPI에서 Python 커넥터 설치
<a name="python-pip-install-pypi"></a>

Python 패키지 인덱스(PyPi)에서 Python 커넥터를 설치하려면 pip를 사용할 수 있습니다. 다음 명령으로 실행하세요.

```
>>> pip install redshift_connector
```

가상 환경 내에 커넥터를 설치할 수 있습니다. 다음 명령으로 실행하세요.

```
>>> pip install redshift_connector
```

커넥터를 사용하여 pandas와 NumPy를 설치할 수도 있습니다.

```
>>> pip install 'redshift_connector[full]'
```

pip에 대한 자세한 내용은 [pip 웹 사이트](https://pip.pypa.io/en/stable/)를 참조하세요.

## Conda에서 Python 커넥터 설치
<a name="python-pip-install-from-conda"></a>

Anaconda.org에서 Python 커넥터를 설치할 수 있습니다.

```
>>>conda install -c conda-forge redshift_connector
```

## AWS에서 GitHub 리포지토리를 복제하여 Python 커넥터 설치
<a name="python-pip-install-from-source"></a>

소스에서 Python 커넥터를 설치하려면 AWS에서 GitHub 리포지토리를 복제합니다. Python 및 virtualenv를 설치한 후 다음 명령을 실행하여 환경을 설정하고 필요한 종속성을 설치합니다.

```
$ git clone https://github.com/aws/amazon-redshift-python-driver.git
$ cd amazon-redshift-python-driver
$ virtualenv venv
$ . venv/bin/activate
$ python -m pip install -r requirements.txt
$ python -m pip install -e .
$ python -m pip install redshift_connector
```

# Amazon Redshift Python 커넥터의 구성 옵션
<a name="python-configuration-options"></a>

아래에서 Amazon Redshift JDBC Python 커넥터에 지정할 수 있는 옵션에 대한 설명을 찾을 수 있습니다. 아래 옵션은 달리 지정하지 않는 한 사용 가능한 최신 커넥터 버전에 적용됩니다.

## access\$1key\$1id
<a name="python-access-key-id-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

IAM 데이터베이스 인증용으로 구성한 IAM 사용자 또는 역할에 대한 액세스 키 ID입니다.

이 파라미터는 선택 사항입니다.

## allow\$1db\$1user\$1override
<a name="python-allow-db-user-override-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

True  
커넥터가 SAML(Security Assertion Markup Language) 어설션의 `DbUser` 값을 사용하도록 지정합니다.

False  
`DbUser` 연결 파라미터의 값이 사용되도록 지정합니다.

이 파라미터는 선택 사항입니다.

## app\$1name
<a name="python-app-name-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

인증에 사용되는 자격 증명 공급자(IdP) 애플리케이션의 이름입니다.

이 파라미터는 선택 사항입니다.

## application\$1name
<a name="python-application_name-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

감사 목적으로 Amazon Redshift에 전달할 클라이언트 애플리케이션의 이름입니다. 입력하는 애플리케이션 이름은 [SYS\$1CONNECTION\$1LOG](https://docs.aws.amazon.com/redshift/latest/dg/SYS_CONNECTION_LOG.html) 테이블의 'application\$1name' 열에 나타납니다. 이렇게 하면 문제를 디버깅할 때 연결 소스를 추적하고 문제를 해결할 수 있습니다.

이 파라미터는 선택 사항입니다.

## auth\$1profile
<a name="python-auth-profile-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

연결 속성이 JSON인 Amazon Redshift 인증 프로파일의 이름입니다. 연결 파라미터 이름 지정에 대한 자세한 내용은 `RedshiftProperty` 클래스를 참조하세요. 최종 사용자가 제공하고 해당 사항이 있는 경우 `RedshiftProperty` 클래스에는 IAM 인증 프로세스 중에 생성된 연결 파라미터가 저장됩니다(예: 임시 IAM 자격 증명). 자세한 내용은 [RedshiftProperty 클래스](https://github.com/aws/amazon-redshift-python-driver/blob/master/redshift_connector/redshift_property.py#L9)를 참조하세요.

이 파라미터는 선택 사항입니다.

## auto\$1create
<a name="python-auto-create-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

사용자가 존재하지 않는 경우 사용자를 생성할지 여부를 나타내는 값입니다.

이 파라미터는 선택 사항입니다.

## client\$1id
<a name="python-client-id-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Azure IdP의 클라이언트 ID입니다.

이 파라미터는 선택 사항입니다.

## client\$1secret
<a name="python-client-secret-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Azure IdP의 클라이언트 보안 암호입니다.

이 파라미터는 선택 사항입니다.

## cluster\$1identifier
<a name="python-cluster-identifier-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift 클러스터의 클러스터 식별자입니다.

이 파라미터는 선택 사항입니다.

## credentials\$1provider
<a name="python-credential-provider-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift로 인증하는 데 사용되는 IdP입니다. 유효한 값은 다음과 같습니다.
+ `AdfsCredentialsProvider`
+ `AzureCredentialsProvider`
+ `BrowserAzureCredentialsProvider`
+ `BrowserAzureOAuth2CredentialsProvider`
+ `BrowserIdcAuthPlugin` - AWS IAM Identity Center를 사용하는 인증 플러그인입니다.
+ `BrowserSamlCredentialsProvider`
+ `IdpTokenAuthPlugin` – AWS IAM Identity Center 토큰 또는 AWS IAM Identity Center에 연결된 웹 ID 제공업체의 OpenID Connect(OIDC) JSON 기반 자격 증명 토큰(JWT)을 수락하는 권한 부여 플러그인입니다.
+ `PingCredentialsProvider`
+ `OktaCredentialsProvider`

이 파라미터는 선택 사항입니다.

## 데이터베이스
<a name="python-database-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

연결할 데이터베이스의 이름입니다.

이 파라미터는 필수 사항입니다.

## database\$1metadata\$1current\$1db\$1only
<a name="python-database-metadata-current-db-only-option"></a>
+ **기본값** – True
+ **데이터 유형** – 부울

애플리케이션이 다중 데이터베이스 datashare 카탈로그를 지원하는지 여부를 나타내는 값입니다. 기본값 True는 애플리케이션이 이전 버전과의 호환성을 위해 다중 데이터베이스 datashare 카탈로그를 지원하지 않음을 나타냅니다.

이 파라미터는 선택 사항입니다.

## db\$1groups
<a name="python-db-groups-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

DbUser가 표시한 사용자가 현재 세션에 대해 조인하는 기존 데이터베이스 그룹 이름의 쉼표로 구분된 목록입니다.

이 파라미터는 선택 사항입니다.

## db\$1user
<a name="python-db-user-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift에 사용할 사용자 ID입니다.

이 파라미터는 선택 사항입니다.

## endpoint\$1url
<a name="python-endpoint-url-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift 엔드포인트 URL입니다. 이 옵션은 AWS 내부 전용입니다.

이 파라미터는 선택 사항입니다.

## group\$1federation
<a name="python-group-federation-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

이 옵션은 Amazon Redshift IDP 그룹을 사용할지 여부를 지정합니다.

이 파라미터는 선택 사항입니다.

**true**  
Amazon Redshift IDP(자격 증명 공급자) 그룹을 사용합니다.

**false**  
사용자 페더레이션을 위해 STS API 및 GetClusterCredentials를 사용하고 연결을 위해 **db\$1groups**를 지정합니다.

## host
<a name="python-host-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift 클러스터의 호스트 이름입니다.

이 파라미터는 선택 사항입니다.

## iam
<a name="python-iam-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

IAM 인증이 사용됩니다.

이 파라미터는 필수 사항입니다.

## iam\$1disable\$1cache
<a name="python-iam-disable-cache-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

이 옵션은 IAM 자격 증명이 캐시되는지 여부를 지정합니다. 기본적으로 IAM 자격 증명이 캐시되지 않습니다. API 게이트웨이에 대한 요청이 제한될 때 성능이 향상됩니다.

이 파라미터는 선택 사항입니다.

## idc\$1client\$1display\$1name
<a name="python-idc_client_display_name-option"></a>
+ **기본값** - Amazon Redshift Python 커넥터
+ **데이터 형식** – 문자열

BrowserIdcAuthPlugin을 사용하는 클라이언트에 사용할 표시 이름입니다.

이 파라미터는 선택 사항입니다.

## idc\$1region
<a name="python-idc_region"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center 인스턴스가 위치한 AWS 리전입니다.

이 파라미터는 credentials\$1provider 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## idp\$1partition
<a name="python-idp_partition-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

ID 제공업체(IdP)가 구성된 클라우드 파티션을 지정합니다. 드라이버가 연결하는 IdP 인증 엔드포인트를 결정합니다.

이 파라미터를 비워 두면 드라이버는 기본적으로 상용 파티션으로 설정됩니다. 가능한 값은 다음과 같습니다.
+  `us-gov`: IdP가 Azure Government에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD Government는 `login.microsoftonline.us` 엔드포인트를 사용합니다.
+  `cn`: IdP가 중국 클라우드 파티션에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD China는 `login.chinacloudapi.cn` 엔드포인트를 사용합니다.

이 파라미터는 선택 사항입니다.

## idpPort
<a name="python-idp-port-option"></a>
+ **기본값** – 7890
+ **데이터 유형** – 정수

IdP가 SAML 어설션을 전송하는 수신 포트입니다.

이 파라미터는 필수 사항입니다.

## idp\$1response\$1timeout
<a name="python-idp-response-timeout-option"></a>
+ **기본값** – 120
+ **데이터 유형** – 정수

IdP에서 SAML 어설션 검색에 대한 시간 제한입니다.

이 파라미터는 필수 사항입니다.

## idp\$1tenant
<a name="python-idp-tenant-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

IdP 테넌트입니다.

이 파라미터는 선택 사항입니다.

## issuer\$1url
<a name="python-issuer_url"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 AWS IAM Identity Center 서버의 인스턴스 엔드포인트를 가리킵니다.

이 파라미터는 credentials\$1provider 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## listen\$1port
<a name="python-listen-port-option"></a>
+ **기본값** – 7890
+ **데이터 유형** – 정수

드라이버가 브라우저 플러그인을 통해 SAML, Azure AD 또는 AWS IAM Identity Center 서비스를 사용할 때 ID 제공업체 또는 권한 부여 코드로부터 SAML 응답을 받는 데 사용하는 포트입니다.

이 파라미터는 선택 사항입니다.

## login\$1url
<a name="python-login-url-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

IdP의 Single Sign-On URL입니다.

이 파라미터는 선택 사항입니다.

## max\$1prepared\$1statements
<a name="python-max-prepared-statements-option"></a>
+ **기본값** - 1000
+ **데이터 유형** – 정수

연결당 캐시되는 준비된 명령문의 최대 개수입니다. 이 파라미터를 0으로 설정하면 캐싱 메커니즘이 비활성화됩니다. 이 파라미터에 음수를 입력하면 기본값으로 설정됩니다.

이 파라미터는 선택 사항입니다.

## numeric\$1to\$1float
<a name="python-numeric-to-float-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

이 옵션은 커넥터가 숫자 데이터 형식 값을 decimal.Decimal에서 float로 변환하는지 여부를 지정합니다. 기본적으로 커넥터는 숫자 데이터 형식 값을 decimal.Decimal로 수신하며 변환하지 않습니다.

결과가 반올림될 수 있으므로 정밀도가 필요한 사용 사례에는 numeric\$1to\$1float를 사용하지 않는 것이 좋습니다.

decimal.Decimal 및 decimal.Decimal과 float의 장단점에 대한 자세한 내용은 Python 웹 사이트에서 [decimal - Decimal fixed point and floating point arithmetic](https://docs.python.org/3/library/decimal.html)(decimal - 10진수 고정 소수점 및 부동 소수점 연산)을 참조하세요.

이 파라미터는 선택 사항입니다.

## partner\$1sp\$1id
<a name="python-partner-sp-id-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Ping 인증에 사용되는 파트너 SP ID입니다.

이 파라미터는 선택 사항입니다.

## 암호
<a name="python-password-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

인증에 사용할 암호입니다.

이 파라미터는 선택 사항입니다.

## 포트
<a name="python-port-option"></a>
+ **기본값** - 5439
+ **데이터 유형** – 정수

Amazon Redshift 클러스터의 포트 번호입니다.

이 파라미터는 필수 사항입니다.

## preferred\$1role
<a name="python-preferred-role-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

현재 연결에 선호되는 IAM 역할입니다.

이 파라미터는 선택 사항입니다.

## principal\$1arn
<a name="python-principal-arn-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

정책을 생성할 사용자 또는 IAM 역할의 Amazon 리소스 이름(ARN)입니다. 역할에 정책을 연결한 후 사용자에게 해당 역할을 할당하여 액세스할 수 있도록 하는 것이 좋습니다.

이 파라미터는 선택 사항입니다.

## profile
<a name="python-profile-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

AWS 자격 증명이 포함된 AWS 자격 증명 파일의 프로파일 이름입니다.

이 파라미터는 선택 사항입니다.

## provider\$1name
<a name="python-provider_name-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Redshift Native Authentication Provider의 이름입니다.

이 파라미터는 선택 사항입니다.

## region
<a name="python-region-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

클러스터가 있는 AWS 리전입니다.

이 파라미터는 선택 사항입니다.

## role\$1arn
<a name="python-role-arn-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

발신자가 수임하는 역할의 Amazon 리소스 이름(ARN)입니다. 이 파라미터는 `JwtCredentialsProvider`로 표시된 공급자가 사용합니다.

`JwtCredentialsProvider` 공급자의 경우 이 파라미터는 필수입니다. 그렇지 않으면 이 파라미터는 선택 항목입니다.

## role\$1session\$1name
<a name="python-role-session-name-option"></a>
+ **기본값** – jwt\$1redshift\$1session
+ **데이터 유형** – 문자열

맡은 역할 세션의 식별자입니다. 일반적으로 애플리케이션 사용자와 연결된 이름 또는 식별자를 전달합니다. 애플리케이션에서 사용하는 임시 보안 자격 증명은 해당 사용자와 연결됩니다. 이 파라미터는 `JwtCredentialsProvider`로 표시된 공급자가 사용합니다.

이 파라미터는 선택 사항입니다.

## 범위
<a name="python-scope-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

사용자가 동의할 수 있는 공백으로 구분된 범위 목록입니다. 애플리케이션이 해당 사용자가 호출하려는 API에 대한 동의를 얻을 수 있도록 이 파라미터를 지정합니다. credentials\$1provider 옵션에 BrowserAzureOAuth2CredentialsProvider를 지정할 때 이 파라미터를 지정할 수 있습니다.

이 파라미터는 BrowserAzureOAuth2CredentialsProvider 플러그인에 반드시 필요합니다.

## secret\$1access\$1key\$1id
<a name="python-secret-access-key-id-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

IAM 데이터베이스 인증용으로 구성한 IAM 사용자 또는 역할에 대한 보안 액세스 키 ID입니다.

이 파라미터는 선택 사항입니다.

## session\$1token
<a name="python-session-token-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

IAM 데이터베이스 인증용으로 구성한 IAM 사용자 또는 역할에 대한 액세스 키 ID입니다. 임시 AWS 자격 증명이 사용 중인 경우 이 파라미터가 필요합니다.

이 파라미터는 선택 사항입니다.

## serverless\$1acct\$1id
<a name="python-serverless-acct-id-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift Serverless 계정 ID입니다.

이 파라미터는 선택 사항입니다.

## serverless\$1work\$1group
<a name="python-serverless-work-group-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

Amazon Redshift Serverless 작업 그룹 이름입니다.

이 파라미터는 선택 사항입니다.

## ssl
<a name="python-ssl-option"></a>
+ **기본값** – True
+ **데이터 유형** – 부울

보안 소켓 계층(SSL)을 사용합니다.

이 파라미터는 필수 사항입니다.

## ssl\$1insecure
<a name="python-ssl-insecure-option"></a>
+ **기본값** – False
+ **데이터 유형** – 부울

IdP 호스트의 서버 SSL 인증서 검증을 비활성화할지 여부를 지정하는 값입니다. 이 파라미터를 True로 설정하면 IdP 호스트의 서버 SSL 인증서 검증이 비활성화됩니다. 프로덕션 환경에서는 기본값 False를 유지하는 것이 좋습니다.

이 파라미터는 선택 사항입니다.

## sslmode
<a name="python-sslmode-option"></a>
+ **기본값** – verify-ca
+ **데이터 유형** – 문자열

Amazon Redshift에 대한 연결 보안입니다. 다음 중 하나를 지정할 수 있습니다.
+ [verify-ca]
+ [verify-full]

이 파라미터는 필수 사항입니다.

## tcp\$1keepalive
<a name="python-tcp_keepalive-option"></a>
+ **기본값** – True
+ **데이터 유형** – 부울

TCP keepalive를 사용하여 연결이 시간 초과되지 않도록 할지 여부입니다. 다음 값을 지정할 수 있습니다.
+ True: 드라이버가 TCP keepalive를 사용하여 연결이 시간 초과되지 않도록 합니다.
+ False: 드라이버가 TCP keepalive를 사용하지 않습니다.

이 파라미터는 선택 사항입니다.

## tcp\$1keepalive\$1count
<a name="python-tcp_keepalive_count-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 정수

연결이 비활성 상태로 간주되기 전에 전송할 응답이 없는 프로브의 수입니다. 예를 들어, 값을 3으로 설정하면 드라이버가 응답이 없는 keepalive 패킷을 3회 전송한 후 연결이 더 이상 활성 상태가 아니라고 판단합니다.

이 파라미터가 지정되지 않으면 Amazon Redshift는 시스템의 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## tcp\$1keepalive\$1interval
<a name="python-tcp_keepalive_interval-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 정수

드라이버가 이전 킵얼라이브 프로브에 대한 확인 응답을 받지 못한 경우, 후속 keepalive 프로브 간 간격(초)입니다. 이 파라미터를 지정할 경우 양의 정수여야 합니다.

이 파라미터가 지정되지 않으면 Amazon Redshift는 시스템의 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## tcp\$1keepalive\$1idle
<a name="python-tcp_keepalive_idle-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 정수

드라이버가 첫 번째 keepalive 프로브를 전송하기까지의 비활성 상태 지속 시간(초)입니다. 예를 들어 값을 120으로 설정하면 드라이버는 첫 번째 keepalive 패킷을 전송하기 전 2분 동안 비활성 상태를 대기합니다. 이 파라미터를 지정할 경우 양의 정수여야 합니다.

이 파라미터가 지정되지 않으면 Amazon Redshift는 시스템의 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## 제한 시간
<a name="python-timeout-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 정수

서버 연결 시간이 초과되기까지의 시간(초)입니다.

이 파라미터는 선택 사항입니다.

## 토큰
<a name="python-token-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center에서 제공한 액세스 토큰 또는 AWS IAM Identity Center와 연결된 웹 ID 제공업체가 제공한 OpenID Connect(OIDC) JSON 웹 토큰(JWT)입니다. 애플리케이션은 AWS IAM Identity Center 또는 AWS IAM Identity Center와 연결된 자격 증명 공급자를 통해 애플리케이션 사용자를 인증하여 이 토큰을 생성해야 합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## token\$1type
<a name="python-token_type-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

`IdpTokenAuthPlugin`에서 사용되는 토큰 유형입니다.

다음 값을 지정할 수 있습니다.

**ACCESS\$1TOKEN**  
AWS IAM Identity Center에서 제공한 액세스 토큰을 사용하는 경우 이 값을 입력합니다.

**EXT\$1JWT**  
AWS IAM Identity Center와 통합된 웹 기반 ID 제공업체가 제공하는 OpenID Connect(OIDC) JSON 웹 토큰(JWT)을 사용하는 경우 이 값을 입력합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## user
<a name="python-user-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

권한 부여에 사용할 사용자 이름입니다.

이 파라미터는 선택 사항입니다.

## web\$1identity\$1token
<a name="python-web-identity-token-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

자격 증명 공급자가 제공하는 OAuth 2.0 액세스 토큰 또는 OpenID Connect ID 토큰입니다. 웹 자격 증명 공급자를 통해 애플리케이션을 사용하는 사용자를 인증하여 애플리케이션이 이 토큰을 가져오도록 합니다. `JwtCredentialsProvider`로 표시된 공급자는 이 파라미터를 사용합니다.

`JwtCredentialsProvider` 공급자의 경우 이 파라미터는 필수입니다. 그렇지 않으면 이 파라미터는 선택 항목입니다.

# Python 커넥터 가져오기
<a name="python-start-import"></a>

Python 커넥터를 가져오려면 다음 명령을 실행합니다.

```
>>> import redshift_connector
```

AWS 자격 증명을 사용하여 Amazon Redshift 클러스터에 연결하려면 다음 명령을 실행합니다.

```
conn = redshift_connector.connect(
    host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
    port=5439,
    database='dev',
    user='awsuser',
    password='my_password'
 )
```

# NumPy와 Python 커넥터 통합
<a name="python-connect-integrate-numpy"></a>

다음은 Python 커넥터를 NumPy와 통합하는 예입니다.

```
>>>  import numpy
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     port=5439,
     database='dev',
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query and receive result set            
cursor.execute("select * from book")

result: numpy.ndarray = cursor.fetch_numpy_array()
print(result)
```

다음은 결과입니다.

```
[['One Hundred Years of Solitude' 'Gabriel García Márquez']
['A Brief History of Time' 'Stephen Hawking']]
```

# pandas와 Python 커넥터 통합
<a name="python-connect-integrate-pandas"></a>

다음은 Python 커넥터를 pandas와 통합하는 예입니다.

```
>>> import pandas

#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     port=5439,
     database='dev',
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query and receive result set
cursor.execute("select * from book")
result: pandas.DataFrame = cursor.fetch_dataframe()
print(result)
```

# 자격 증명 공급자 플러그인 사용
<a name="python-connect-identity-provider-plugins"></a>

자격 증명 공급자 플러그인을 사용하는 방법에 대한 일반적인 내용은 [IAM 자격 증명 제공 옵션](options-for-providing-iam-credentials.md) 섹션을 참조하세요. IAM 역할에 대한 모범 사례를 비롯한 IAM ID 관리에 대한 자세한 내용은 [Amazon Redshift의 Identity and Access Management](redshift-iam-authentication-access-control.md) 섹션을 참조하세요.

## ADFS 자격 증명 공급자 플러그인을 사용한 인증
<a name="python-connect-identity-provider-active-dir"></a>

다음은 ADFS(Active Directory Federation Service) 자격 증명 공급자 플러그인을 사용하여 Amazon Redshift 데이터베이스에 연결하는 사용자를 인증하는 예입니다.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='AdfsCredentialsProvider',
    user='brooke@myadfshostname.com',
    password='Hunter2',
    idp_host='myadfshostname.com'
)
```

## Azure 자격 증명 공급자 플러그인을 사용한 인증
<a name="python-connect-identity-provider-azure"></a>

다음은 Azure 자격 증명 공급자 플러그인을 사용한 인증의 예입니다. 다음과 같이 Azure Enterprise 애플리케이션에 대한 `client_id` 및 `client_secret` 값을 생성할 수 있습니다.

```
>>>  con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='AzureCredentialsProvider',
    user='brooke@myazure.org',
    password='Hunter2',
    idp_tenant='my_idp_tenant',
    client_id='my_client_id',
    client_secret='my_client_secret',
    preferred_role='arn:aws:iam:123:role/DataScientist'
)
```

## AWS IAM Identity Center 자격 증명 공급자 플러그인을 사용한 인증
<a name="python-connect-identity-provider-aws-idc"></a>

 다음은 AWS IAM Identity Center 자격 증명 공급자 플러그인을 사용한 인증의 예입니다.

```
with redshift_connector.connect(
credentials_provider='BrowserIdcAuthPlugin',
host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
database='dev',
idc_region='us-east-1',
issuer_url='https://identitycenter.amazonaws.com/ssoins-790723ebe09c86f9',
idp_response_timeout=60,
listen_port=8100,
idc_client_display_name='Test Display Name',
# port value of 5439 is specified by default
)
```

## Azure 브라우저 자격 증명 공급자 플러그인을 사용한 인증
<a name="python-connect-identity-provider-azure-browser"></a>

다음은 Azure 브라우저 자격 증명 공급자 플러그인을 사용하여 Amazon Redshift 데이터베이스에 연결하는 사용자를 인증하는 예입니다.

멀티 팩터 인증은 사용자가 로그인 보안 인증 정보를 제공하는 브라우저에서 발생합니다.

```
>>>con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='BrowserAzureCredentialsProvider',
    idp_tenant='my_idp_tenant',
    client_id='my_client_id',
)
```

## Okta 자격 증명 공급자 플러그인을 사용한 인증
<a name="python-connect-identity-provider-okta"></a>

다음은 Okta 자격 증명 공급자 플러그인을 사용한 인증의 예입니다. Okta 애플리케이션을 통해 `idp_host`, `app_id` 및 `app_name`에 대한 값을 얻을 수 있습니다.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='OktaCredentialsProvider',
    user='brooke@myazure.org',
    password='hunter2',
    idp_host='my_idp_host',
    app_id='my_first_appetizer',
    app_name='dinner_party'
)
```

## 일반 SAML 브라우저 자격 증명 공급자 플러그인과 함께 JumpCloud를 사용한 인증
<a name="python-connect-identity-provider-jumpcloud"></a>

다음은 일반 SAML 브라우저 자격 증명 공급자 플러그인과 함께 JumpCloud를 사용한 인증의 예입니다.

암호 파라미터가 필요합니다. 그러나 브라우저에서 멀티 팩터 인증이 이루어지므로 이 파라미터를 입력할 필요는 없습니다.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='BrowserSamlCredentialsProvider',
    user='brooke@myjumpcloud.org',
    password='',
    login_url='https://sso.jumpcloud.com/saml2/plustwo_melody'
)
```

# Amazon Redshift Python 커넥터 사용 예
<a name="python-connect-examples"></a>

다음은 Amazon Redshift Python 커넥터 사용 방법의 예입니다. 실행하려면 먼저 Python 커넥터를 설치해야 합니다. Amazon Redshift Python 커넥터 설치에 대한 자세한 내용은 [Amazon Redshift Python 커넥터 설치](python-driver-install.md) 섹션을 참조하세요. Python 커넥터와 함께 사용할 수 있는 구성 옵션에 대한 자세한 내용은 [Amazon Redshift Python 커넥터의 구성 옵션](python-configuration-options.md) 단원을 참조하세요.

**Topics**
+ [

## AWS 보안 인증 정보를 사용하여 Amazon Redshift 클러스터에 연결하고 쿼리 수행
](#python-connect-cluster)
+ [

## autocommit 사용
](#python-connect-enable-autocommit)
+ [

## 커서 파라미터 스타일 구성
](#python-connect-config-paramstyle)
+ [

## COPY를 사용하여 Amazon S3 버킷에서 데이터 복사 및 UNLOAD를 사용하여 Amazon S3 버킷에 데이터 쓰기
](#python-connect-copy-unload-s3)

## AWS 보안 인증 정보를 사용하여 Amazon Redshift 클러스터에 연결하고 쿼리 수행
<a name="python-connect-cluster"></a>

다음 예시는 AWS 보안 인증 정보를 사용하여 Amazon Redshift 클러스터에 연결한 후 테이블을 쿼리하고 쿼리 결과를 가져오는 방법을 안내합니다.

```
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     database='dev',
     port=5439,
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query a table using the Cursor
>>> cursor.execute("select * from book")
                
#Retrieve the query result set
>>> result: tuple = cursor.fetchall()
>>> print(result)
 >> (['One Hundred Years of Solitude', 'Gabriel García Márquez'], ['A Brief History of Time', 'Stephen Hawking'])
```

## autocommit 사용
<a name="python-connect-enable-autocommit"></a>

autocommit 속성은 Python 데이터베이스 API 사양에 따라 기본적으로 해제되어 있습니다. 트랜잭션이 진행되지 않도록 롤백 명령을 수행한 후 다음 명령을 사용하여 연결의 autocommit 속성을 설정할 수 있습니다.

```
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(...)

# Run a rollback command
>>>  conn.rollback()

# Turn on autocommit
>>>  conn.autocommit = True
>>>  conn.run("VACUUM")

# Turn off autocommit
>>>  conn.autocommit = False
```

## 커서 파라미터 스타일 구성
<a name="python-connect-config-paramstyle"></a>

커서의 파라미터 스타일은 cursor.paramstyle을 통해 수정할 수 있습니다. 사용되는 기본 파라미터 스타일은 `format`입니다. 이 파라미터의 유효한 값은 `qmark`, `numeric`, `named`, `format`, `pyformat`입니다.

다음은 다양한 파라미터 스타일을 사용하여 샘플 SQL 문에 파라미터를 전달하는 예제입니다.

```
# qmark
redshift_connector.paramstyle = 'qmark'
sql = 'insert into foo(bar, jar) VALUES(?, ?)'
cursor.execute(sql, (1, "hello world"))

# numeric
redshift_connector.paramstyle = 'numeric'
sql = 'insert into foo(bar, jar) VALUES(:1, :2)'
cursor.execute(sql, (1, "hello world"))

# named
redshift_connector.paramstyle = 'named'
sql = 'insert into foo(bar, jar) VALUES(:p1, :p2)'
cursor.execute(sql, {"p1":1, "p2":"hello world"})

# format
redshift_connector.paramstyle = 'format'
sql = 'insert into foo(bar, jar) VALUES(%s, %s)'
cursor.execute(sql, (1, "hello world"))

# pyformat
redshift_connector.paramstyle = 'pyformat'
sql = 'insert into foo(bar, jar) VALUES(%(bar)s, %(jar)s)'
cursor.execute(sql, {"bar": 1, "jar": "hello world"})
```

## COPY를 사용하여 Amazon S3 버킷에서 데이터 복사 및 UNLOAD를 사용하여 Amazon S3 버킷에 데이터 쓰기
<a name="python-connect-copy-unload-s3"></a>

다음 예에서는 Amazon S3 버킷에서 테이블로 데이터를 복사한 다음 해당 테이블에서 버킷으로 언로드하는 방법을 보여줍니다.

다음 데이터가 포함된 `category_csv.txt` 텍스트 파일이 S3 버킷에 업로드됩니다.

```
12,Shows,Musicals,Musical theatre
13,Shows,Plays,"All ""non-musical"" theatre"
14,Shows,Opera,"All opera, light, and ""rock"" opera"
15,Concerts,Classical,"All symphony, concerto, and choir concerts"
```

다음은 Amazon Redshift 데이터베이스에 먼저 연결하는 Python 코드의 예입니다. 그런 다음 `category`라는 테이블을 생성하고 S3 버킷의 CSV 데이터를 테이블로 복사합니다.

```
#Connect to the cluster and create a Cursor
>>> import redshift_connector
>>> with redshift_connector.connect(...) as conn:
>>> with conn.cursor() as cursor:

#Create an empty table
>>>     cursor.execute("create table category (catid int, cargroup varchar, catname varchar, catdesc varchar)")

#Use COPY to copy the contents of the S3 bucket into the empty table 
>>>     cursor.execute("copy category from 's3://testing/category_csv.txt' iam_role 'arn:aws:iam::123:role/RedshiftCopyUnload' csv;")

#Retrieve the contents of the table
>>>     cursor.execute("select * from category")
>>>     print(cursor.fetchall())

#Use UNLOAD to copy the contents of the table into the S3 bucket
>>>     cursor.execute("unload ('select * from category') to 's3://testing/unloaded_category_csv.txt'  iam_role 'arn:aws:iam::123:role/RedshiftCopyUnload' csv;")

#Retrieve the contents of the bucket
>>>     print(cursor.fetchall())
 >> ([12, 'Shows', 'Musicals', 'Musical theatre'], [13, 'Shows', 'Plays', 'All "non-musical" theatre'], [14, 'Shows', 'Opera', 'All opera, light, and "rock" opera'], [15, 'Concerts', 'Classical', 'All symphony, concerto, and choir concerts'])
```

`autocommit`을 true로 설정하지 않은 경우 `execute()` 문을 실행한 후 `conn.commit()`으로 커밋합니다.

데이터는 다음 콘텐츠가 들어 있는 S3 버킷의 `unloaded_category_csv.text0000_part00` 파일로 언로드됩니다.

```
12,Shows,Musicals,Musical theatre
13,Shows,Plays,"All ""non-musical"" theatre"
14,Shows,Opera,"All opera, light, and ""rock"" opera"
15,Concerts,Classical,"All symphony, concerto, and choir concerts"
```

# Amazon Redshift Python 커넥터용 API 참조
<a name="python-api-reference"></a>

다음에서 Amazon Redshift Python 커넥터 API 작업에 대한 설명을 찾을 수 있습니다.

## redshift\$1connector
<a name="python-api-redshift_connector"></a>

다음에서 `redshift_connector` API 작업에 대한 설명을 찾을 수 있습니다.

`connect(user, database, password[, port, …])`  
Amazon Redshift 클러스터에 대한 연결을 설정합니다. 이 기능은 사용자 입력을 검증하고 선택적으로 자격 증명 공급자 플러그인을 사용하여 인증한 다음 연결 객체를 구성합니다.

`apilevel`  
지원되는 DBAPI 레벨은 현재 "2.0"입니다.

`paramstyle``str(object=’’) -> str str(bytes_or_buffer[, encoding[, errors]]) -> str`  
전역적으로 사용할 데이터베이스 API 파라미터 스타일입니다.

## 연결
<a name="python-api-connection"></a>

다음에서 Amazon Redshift Python 커넥터의 연결 API 작업에 대한 설명을 찾을 수 있습니다.

`__init__(user, password, database[, host, …])`  
원시 연결 객체를 초기화합니다.

`cursor`  
이 연결에 바인딩된 커서 객체를 생성합니다.

`commit`  
현재 데이터베이스 트랜잭션을 커밋합니다.

`rollback`  
현재 데이터베이스 트랜잭션을 롤백합니다.

`close`  
데이터베이스 연결을 닫습니다.

`execute(cursor, operation, vals)`  
지정된 SQL 명령을 실행합니다. `redshift_connector.paramstyle` 값에 따라 파라미터를 시퀀스 또는 매핑으로 제공할 수 있습니다.

`run(sql[, stream])`  
지정된 SQL 명령을 실행합니다. COPY 명령과 함께 사용할 스트림을 제공할 수도 있습니다.

`xid(format_id, global_transaction_id, …)`  
트랜잭션 ID를 생성합니다. postgres에서는 `global_transaction_id` 파라미터만 사용됩니다. format\$1id 및 branch\$1qualifier는 postgres에서 사용되지 않습니다. `global_transaction_id`는 튜플(`format_id`, `global_transaction_id`, `branch_qualifier`)을 반환하는 postgres에서 지원하는 모든 문자열 식별자일 수 있습니다.

`tpc_begin(xid)`  
형식 ID, 글로벌 트랜잭션 ID 및 분기 한정자로 구성된 트랜잭션 ID `xid`로 TPC 트랜잭션을 시작합니다.

`tpc_prepare`  
.tpc\$1begin으로 시작된 트랜잭션의 첫 번째 단계를 수행합니다.

`tpc_commit([xid])`  
인수 없이 호출 시 .tpc\$1commit은 이전에 .tpc\$1prepare()로 준비된 TPC 트랜잭션을 커밋합니다.

`tpc_rollback([xid])`  
인수 없이 호출 시 .tpc\$1rollback은 TPC 트랜잭션을 롤백합니다.

`tpc_recover`  
.tpc\$1commit(xid) 또는 .tpc\$1rollback(xid)과 함께 사용하기에 적합한 보류 중인 트랜잭션 ID 목록을 반환합니다.

## 커서
<a name="python-api-cursor"></a>

다음에서 커서 API 작업에 대한 설명을 찾을 수 있습니다.

`__init__(connection[, paramstyle])`  
원시 커서 객체를 초기화합니다.

`insert_data_bulk(filename, table_name, parameter_indices, column_names, delimiter, batch_size)`  
대량 INSERT 문을 실행합니다.

`execute(operation[, args, stream, …])`  
데이터베이스 작업을 실행합니다.

`executemany(operation, param_sets)`  
데이터베이스 작업을 준비한 다음 제공된 모든 파라미터 시퀀스 또는 매핑에 대해 실행합니다.

`fetchone`  
쿼리 결과 집합의 다음 행을 가져옵니다.

`fetchmany([num])`  
쿼리 결과 집합의 다음 행 집합을 가져옵니다.

`fetchall`  
쿼리 결과의 나머지 행을 모두 가져옵니다.

`close`  
지금 커서를 닫습니다.

`__iter__`  
커서 객체를 반복하여 쿼리에서 행을 검색할 수 있습니다.

`fetch_dataframe([num])`  
마지막 쿼리 결과의 데이터 프레임을 반환합니다.

`write_dataframe(df, table)`  
동일한 구조 데이터 프레임을 Amazon Redshift 데이터베이스에 씁니다.

`fetch_numpy_array([num])`  
마지막 쿼리 결과의 NumPy 배열을 반환합니다.

`get_catalogs`  
Amazon Redshift는 단일 연결에서 여러 카탈로그를 지원하지 않습니다. Amazon Redshift는 현재 카탈로그만 반환합니다.

`get_tables([catalog, schema_pattern, …])`  
시스템 내에서 사용자 정의된 고유한 공용 테이블을 반환합니다.

`get_columns([catalog, schema_pattern, …])`  
Amazon Redshift 데이터베이스의 특정 테이블에 있는 모든 열 목록을 반환합니다.

## AdfsCredentialsProvider 플러그인
<a name="python-adfs-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 AdfsCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.AdfsCredentialsProvider()
```

## AzureCredentialsProvider 플러그인
<a name="python-azure-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 AzureCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.AzureCredentialsProvider()
```

## BrowserAzureCredentialsProvider 플러그인
<a name="python-browser-azure-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 BrowserAzureCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.BrowserAzureCredentialsProvider()
```

## BrowserSamlCredentialsProvider 플러그인
<a name="python-browser-saml-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 BrowserSamlCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.BrowserSamlCredentialsProvider()
```

## OktaCredentialsProvider 플러그인
<a name="python-okta-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 OktaCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.OktaCredentialsProvider()
```

## PingCredentialsProvider 플러그인
<a name="python-ping-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 PingCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.PingCredentialsProvider()
```

## SamlCredentialsProvider 플러그인
<a name="python-saml-credentials-plugin"></a>

다음은 Amazon Redshift Python 커넥터에 대한 SamlCredentialsProvider 플러그인 API 작업의 구문입니다.

```
redshift_connector.plugin.SamlCredentialsProvider()
```

# Apache Spark용 Amazon Redshift 통합
<a name="spark-redshift-connector"></a>

 [Apache Spark](https://aws.amazon.com/emr/features/spark/)는 기계 학습, 스트림 처리 또는 그래픽 분석을 수행하는 데 도움이 되는 분산 처리 프레임워크 및 프로그래밍 모델입니다. Apache Hadoop과 마찬가지로, Spark는 빅 데이터 워크로드에 일반적으로 사용되는 오픈 소스 분산형 처리 시스템입니다. Spark에는 최적화된 비순환 방향 그래프(DAG) 실행 엔진이 있으며 메모리 안에 데이터를 능동적으로 캐시합니다. 이렇게 하면 특히 특정 알고리즘 및 대화형 쿼리의 성능을 향상시킬 수 있습니다.

 이 통합은 Amazon Redshift와 Amazon Redshift Serverless에서 데이터를 읽고 쓰는 Apache Spark 애플리케이션을 빌드할 수 있는 Spark 커넥터를 제공합니다. 이러한 애플리케이션은 애플리케이션 성능이나 데이터의 트랜잭션 일관성을 손상시키지 않습니다. 이 통합은 [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/) 및 [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/)에 자동으로 포함되므로 데이터 수집 및 변환 파이프라인의 일부로 Amazon Redshift에 데이터를 액세스하고 로드하는 Apache Spark 작업을 즉시 실행할 수 있습니다.

현재 이 통합과 함께 Spark 버전 3.3.x, 3.4.x, 3.5.x 및 4.0.0을 사용할 수 있습니다.

 이 통합은 다음을 제공합니다.
+  AWS Identity and Access Management(IAM) 인증. 자세한 내용은 [Amazon Redshift의 Identity and Access Management](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html)를 참조하세요.
+ 조건자 및 쿼리 푸시다운을 통한 성능 향상.
+  Amazon Redshift 데이터 형식.
+ Amazon Redshift와 Amazon Redshift Serverless에 대한 연결.

## Spark 커넥터 사용 시 고려 사항 및 제한 사항
<a name="spark-redshift-connector-considerations"></a>
+  tempdir URI는 Amazon S3 위치를 가리킵니다. 이 임시 디렉터리는 자동으로 정리되지 않으며 추가 비용이 발생할 수 있습니다. *Amazon Simple Storage Service 사용 설명서*의 [Amazon S3 수명 주기 정책](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html)을 사용하여 Amazon S3 버킷에 대한 보존 규칙을 정의하는 것이 좋습니다.
+  기본적으로 Amazon S3와 Redshift 간의 복사는 S3 버킷과 Redshift 클러스터가 서로 다른 AWS 리전에 있는 경우 작동하지 않습니다. 별도의 AWS 리전을 사용하려면 `tempdir_region` 파라미터를 `tempdir`에 사용되는 S3 버킷의 리전으로 설정합니다.
+ `tempformat` 파라미터를 사용하여 Parquet 데이터를 쓰는 경우 교차 리전은 S3와 Redshift 사이에 씁니다.
+ [Amazon S3 서버 측 암호화](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html)를 사용하여 사용된 Amazon S3 버킷을 암호화하는 것이 좋습니다.
+ [Amazon S3 버킷에 대한 퍼블릭 액세스를 차단](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html)하는 것이 좋습니다.
+  Amazon Redshift 클러스터는 공개적으로 액세스할 수 없도록 하는 것이 좋습니다.
+  [Amazon Redshift 감사 로깅](https://docs.aws.amazon.com/redshift/latest/mgmt/db-auditing.html)을 켜는 것이 좋습니다.
+  [Amazon Redshift 저장된 데이터 암호화](https://docs.aws.amazon.com/redshift/latest/mgmt/security-server-side-encryption.html)를 켜는 것이 좋습니다.
+  Amazon EMR의 Spark에서 Amazon Redshift로의 JDBC 연결에 대해 SSL을 켜는 것이 좋습니다.
+ Amazon Redshift 인증 파라미터에 대해 `aws_iam_role` 파라미터를 사용하여 IAM 역할을 전달하는 것이 좋습니다.

# Spark 커넥터를 사용한 인증
<a name="redshift-spark-connector-authentication"></a>

다음 다이어그램은 Amazon S3, Amazon Redshift, Spark 드라이버 및 Spark 실행기 간의 인증을 설명합니다.

![\[Spark 커넥터 인증 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/images/spark-connector-authentication.png)


## Redshift와 Spark 간의 인증
<a name="redshift-spark-authentication"></a>

 Amazon Redshift 제공 JDBC 드라이버 버전 2.x 드라이버를 사용해 로그인 자격 증명을 지정하여 Spark 커넥터로 Amazon Redshift에 연결할 수 있습니다. IAM을 사용하려면 [IAM 인증을 사용하도록 JDBC URL을 구성](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-iam-credentials-configure-jdbc-odbc.html)하세요. Amazon EMR 또는 AWS Glue에서 Redshift 클러스터에 연결하려면 IAM 역할에 임시 IAM 자격 증명을 검색하는 데 필요한 권한이 있는지 확인하세요. 다음 목록은 IAM 역할이 자격 증명을 검색하고 Amazon S3 작업을 실행하는 데 필요한 모든 권한을 설명합니다.
+ [ Redshift:GetClusterCredentials](https://docs.aws.amazon.com/redshift/latest/APIReference/API_GetClusterCredentials.html)(프로비저닝된 Redshift 클러스터용)
+ [ Redshift:DescribeClusters](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DescribeClusters.html)(프로비저닝된 Redshift 클러스터용)
+ [ Redshift:GetWorkgroup](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_GetWorkgroup.html)(Amazon Redshift Serverless 작업 그룹)
+ [ Redshift:GetCredentials](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_GetCredentials.html)(Amazon Redshift Serverless 작업 그룹)
+ [ s3:ListBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)
+ [ s3:GetBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucket.html)
+ [ s3:GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
+ [ s3:PutObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
+ [ s3:GetBucketLifecycleConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html)

 GetClusterCredentials에 대한 자세한 내용은 [GetClusterCredentials에 대한 IAM 정책](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html#redshift-policy-resources.getclustercredentials-resources)을 참조하세요.

또한 `COPY` 및 `UNLOAD` 작업 중에 Amazon Redshift가 IAM 역할을 맡을 수 있는지 확인해야 합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "redshift.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

최신 JDBC 드라이버를 사용하는 경우 드라이버는 Amazon Redshift 자체 서명 인증서에서 ACM 인증서로의 전환을 자동으로 관리합니다. 하지만 [JDBC URL에 SSL 옵션을 지정](https://docs.aws.amazon.com/redshift/latest/mgmt/jdbc20-configuration-options.html#jdbc20-ssl-option)해야 합니다.

 다음은 Amazon Redshift에 연결하기 위해 JDBC 드라이버 URL 및 `aws_iam_role`을 지정하는 방법의 예입니다.

```
df.write \
  .format("io.github.spark_redshift_community.spark.redshift ") \
  .option("url", "jdbc:redshift:iam://<the-rest-of-the-connection-string>") \
  .option("dbtable", "<your-table-name>") \
  .option("tempdir", "s3a://<your-bucket>/<your-directory-path>") \
  .option("aws_iam_role", "<your-aws-role-arn>") \
  .mode("error") \
  .save()
```

## Amazon S3와 Spark 간의 인증
<a name="spark-s3-authentication"></a>

 IAM 역할을 사용하여 Spark와 Amazon S3 간에 인증하는 경우 다음 방법 중 하나를 사용하세요.
+ Java용 AWS SDK는 DefaultAWSCredentialsProviderChain 클래스에 의해 구현된 기본 자격 증명 공급자 체인을 사용하여 자동으로 AWS 자격 증명을 찾으려고 시도합니다. 자세한 내용은 [기본 자격 증명 공급자 체인 사용](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html#credentials-default)을 참조하세요.
+ [Hadoop 구성 속성](https://github.com/apache/hadoop/blob/trunk/hadoop-tools/hadoop-aws/src/site/markdown/tools/hadoop-aws/index.md)을 통해 AWS 키를 지정할 수 있습니다. 예를 들어 `tempdir` 구성이 `s3n://` 파일 시스템을 가리키는 경우 Hadoop XML 구성 파일에서 `fs.s3n.awsAccessKeyId` 및 `fs.s3n.awsSecretAccessKey` 속성을 설정하거나 `sc.hadoopConfiguration.set()`을 호출하여 Spark의 전역 Hadoop 구성을 변경합니다.

예를 들어 s3n 파일 시스템을 사용하는 경우 다음을 추가합니다.

```
sc.hadoopConfiguration.set("fs.s3n.awsAccessKeyId", "YOUR_KEY_ID")
sc.hadoopConfiguration.set("fs.s3n.awsSecretAccessKey", "YOUR_SECRET_ACCESS_KEY")
```

s3a 파일 시스템을 사용하는 경우 다음을 추가합니다.

```
sc.hadoopConfiguration.set("fs.s3a.access.key", "YOUR_KEY_ID")
sc.hadoopConfiguration.set("fs.s3a.secret.key", "YOUR_SECRET_ACCESS_KEY")
```

Python을 사용하는 경우 다음 작업을 사용합니다.

```
sc._jsc.hadoopConfiguration().set("fs.s3n.awsAccessKeyId", "YOUR_KEY_ID")
sc._jsc.hadoopConfiguration().set("fs.s3n.awsSecretAccessKey", "YOUR_SECRET_ACCESS_KEY")
```
+ `tempdir` URL에서 인증 키를 인코딩합니다. 예를 들어 URI `s3n://ACCESSKEY:SECRETKEY@bucket/path/to/temp/dir`은 키 쌍(`ACCESSKEY`, `SECRETKEY`)을 인코딩합니다.

## Redshift와 Amazon S3 간의 인증
<a name="redshift-s3-authentication"></a>

 쿼리에서 COPY 및 UNLOAD 명령을 사용하는 경우 사용자 대신 쿼리를 실행할 수 있도록 Amazon Redshift에 대한 Amazon S3 액세스 권한도 부여해야 합니다. 이렇게 하려면 먼저 [다른 AWS 서비스에 액세스할 수 있도록 Amazon Redshift에 권한을 부여](https://docs.aws.amazon.com/redshift/latest/mgmt/authorizing-redshift-service.html)한 다음 [IAM 역할을 사용하여 COPY 및 UNLOAD 작업에 권한을 부여](https://docs.aws.amazon.com/redshift/latest/mgmt/copy-unload-iam-role.html)합니다.

가장 좋은 방법은 권한 정책을 IAM 역할에 연결한 다음 필요에 따라 사용자 및 그룹에 할당하는 것입니다. 자세한 내용은 [Amazon Redshift의 Identity and Access Management](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html)를 참조하세요.

## 와의 통합AWS Secrets Manager
<a name="redshift-secrets-manager-authentication"></a>

AWS Secrets Manager에 저장된 시크릿에서 Redshift 사용자 이름 및 암호 보안 인증 정보를 검색할 수 있습니다. Redshift 보안 인증을 자동으로 제공하려면 `secret.id` 파라미터를 사용하세요. Redshift 보안 인증 시크릿을 만드는 방법에 대한 자세한 내용은 [AWS Secrets Manager 데이터베이스 보안 암호 생성](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html)을 참조하세요.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/redshift-spark-connector-authentication.html)

**참고**  
 인정 조항: 이 문서에는 [Apache 2.0 라이선스](https://www.apache.org/licenses/LICENSE-2.0)에 따라 라이선스가 부여된 [Apache Software Foundation](http://www.apache.org/)에서 개발한 샘플 코드 및 언어가 포함되어 있습니다.

# 푸시다운을 통한 성능 향상
<a name="spark-redshift-connector-pushdown"></a>

 Spark 커넥터는 조건자 및 쿼리 푸시다운을 자동으로 적용하여 성능을 최적화합니다. 이 지원은 쿼리에서 지원되는 함수를 사용하는 경우 Spark 커넥터가 함수를 SQL 쿼리로 변환하고 Amazon Redshift에서 쿼리를 실행함을 의미합니다. 이 최적화로 인해 검색되는 데이터가 적어지므로 Apache Spark는 더 적은 데이터를 처리하고 더 나은 성능을 가질 수 있습니다. 기본적으로 푸시다운은 자동으로 활성화됩니다. 비활성화하려면 `autopushdown`을 false로 설정하세요.

```
import sqlContext.implicits._val 
 sample= sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url",jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "event")
    .option("autopushdown", "false")
    .load()
```

 푸시다운에서는 다음 함수가 지원됩니다. 이 목록에 없는 함수를 사용하는 경우 Spark 커넥터는 Amazon Redshift 대신 Spark에서 함수를 수행하므로 성능이 최적화되지 않습니다. Spark의 전체 함수 목록은 [내장 함수](https://spark.apache.org/docs/latest/api/sql/index.html)를 참조하세요.
+ 집계 함수
  + avg
  + count
  + 최대
  + min
  + sum
  + stddev\$1samp
  + stddev\$1pop
  + var\$1samp
  + var\$1pop
+ 부울 연산자
  + in
  + isnull
  + isnotnull
  + contains
  + endswith
  + startswith
+ 논리 연산자
  + 및
  + 또는
  + not(또는 \$1)
+ 수학 함수
  + \$1
  + -
  + \$1
  + /
  + -(단항)
  + abs
  + acos
  + asin
  + atan
  + ceil
  + cos
  + exp
  + floor
  + greatest
  + least
  + log10
  + pi
  + pow
  + round
  + sin
  + sqrt
  + tan
+ 기타 함수
  + cast
  + coalesce
  + decimal
  + 다음과 같은 경우
  + in
+ 관계형 연산자
  + \$1=
  + =
  + >
  + >=
  + <
  + <=
+ 문자열 함수
  + ASCII
  + lpad
  + rpad
  + translate
  + upper
  + lower
  + length
  + trim
  + ltrim
  + rtrim
  + like
  + substring
  + concat
+ 시간 및 날짜 함수
  + add\$1months
  + 날짜
  + date\$1add
  + date\$1sub
  + date\$1trunc
  + timestamp
  + trunc
+ 수학적 연산
  + CheckOverflow
  + 정밀성 증진
+ 관계형 연산
  + Aliases(예: AS)
  + 사례: 언제
  + Distinct
  + InSet
  + Joins and cross joins
  + 한도
  + Unions, union all
  + ScalarSubquery
  + Sorts(오름차순 및 내림차순)
  + UnscaledValue

# 기타 구성 옵션
<a name="spark-redshift-connector-other-config"></a>

이 페이지에서 Amazon Redshift Spark 커넥터에 지정할 수 있는 옵션에 관한 설명을 확인합니다.

## 문자열 열의 최대 크기
<a name="spark-redshift-connector-other-config-max-size"></a>

Redshift는 VARCHAR(256)로 저장되는 테이블 생성 시 문자열 열을 텍스트 열로 생성합니다. 더 큰 크기를 지원하는 열을 원하면 maxlength를 사용하여 문자열 열의 최대 길이를 지정할 수 있습니다. 다음은 `maxlength`를 지정하는 방법의 예입니다.

```
columnLengthMap.foreach { case (colName, length) =>
  val metadata = new MetadataBuilder().putLong("maxlength", length).build()
  df = df.withColumn(colName, df(colName).as(colName, metadata))
}
```

## 열 유형
<a name="spark-redshift-connector-other-config-column-type"></a>

열 유형을 설정하려면 `redshift_type` 필드를 사용합니다.

```
columnTypeMap.foreach { case (colName, colType) =>
  val metadata = new MetadataBuilder().putString("redshift_type", colType).build()
  df = df.withColumn(colName, df(colName).as(colName, metadata))
}
```

## 열에 대한 압축 인코딩
<a name="spark-redshift-connector-other-config-compression-encoding"></a>

 열에서 특정 압축 인코딩을 사용하려면 인코딩 필드를 사용하세요. 지원되는 압축 인코딩의 전체 목록은 [압축 인코딩](https://docs.aws.amazon.com/redshift/latest/dg/c_Compression_encodings.html)을 참조하세요.

## 열에 대한 설명
<a name="spark-redshift-connector-other-config-description"></a>

설명을 설정하려면 `description` 필드를 사용합니다.

## Redshift와 Amazon S3 간의 인증
<a name="spark-redshift-connector-other-config-unload-as-text"></a>

 기본적으로 결과는 Parquet 형식으로 Amazon S3에 언로드됩니다. 파이프로 구분된 텍스트 파일로 결과를 언로드하려면 다음 옵션을 지정합니다.

```
.option("unload_s3_format", "TEXT")
```

## 푸시다운 문
<a name="spark-redshift-connector-other-config-lazy-pushdown"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/spark-redshift-connector-other-config.html)

## 커넥터 파라미터
<a name="spark-redshift-connector-other-config-spark-parameters"></a>

Spark SQL의 파라미터 맵 또는 `OPTIONS`는 다음 설정을 지원합니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/spark-redshift-connector-other-config.html)

**참고**  
 인정 조항: 이 문서에는 [Apache 2.0 라이선스](https://www.apache.org/licenses/LICENSE-2.0)에 따라 라이선스가 부여된 [Apache Software Foundation](http://www.apache.org/)에서 개발한 샘플 코드 및 언어가 포함되어 있습니다.

# 지원되는 데이터 유형
<a name="spark-redshift-connector-data-types"></a>

Amazon Redshift의 다음 데이터 형식은 Spark 커넥터에서 지원됩니다. Amazon Redshift에서 지원되는 데이터 형식의 전체 목록은 [데이터 유형](https://docs.aws.amazon.com//redshift/latest/dg/c_Supported_data_types.html)을 참조하세요. 아래 테이블에 없는 데이터 형식은 Spark 커넥터에서 지원되지 않습니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/spark-redshift-connector-data-types.html)

## 복잡한 데이터 형식
<a name="spark-redshift-connector-complex-data-types"></a>

 spark 커넥터를 사용하여 `ArrayType`, `MapType`, `StructType`과 같은 Spark 복합 데이터 형식을 Redshift SUPER 데이터 형식 열에 읽고 쓸 수 있습니다. 읽기 작업 중에 스키마를 제공하는 경우 열의 데이터는 중첩된 형식을 포함하여 Spark에서 해당 복합 형식으로 변환됩니다 또한 `autopushdown`을 활성화하면 중첩된 속성, 맵 값 및 배열 인덱스의 투영이 Redshift로 푸시다운되므로 데이터의 일부만 액세스할 때 중첩된 전체 데이터 구조를 더 이상 언로드할 필요가 없습니다.

커넥터에서 데이터 프레임을 작성할 때 `MapType`(`StringType` 사용), `StructType` 또는 `ArrayType` 형식의 모든 열은 Redshift SUPER 데이터 형식 열에 기록됩니다. 이러한 중첩된 데이터 구조를 작성할 때 `tempformat` 파라미터는 `CSV`, `CSV GZIP` 또는 `PARQUET` 형식이어야 합니다. `AVRO`를 사용하면 예외가 발생합니다. 키 형식이 `StringType`이 아닌 `MapType` 데이터 구조를 작성하는 경우에도 예외가 발생합니다.

### StructType
<a name="spark-redshift-connector-complex-data-types-examples-structtype"></a>

다음 예제에서는 구조체를 포함하는 SUPER 데이터 형식으로 테이블을 만드는 방법을 보여 줍니다.

```
create table contains_super (a super);
```

그런 다음 커넥터를 사용하여 다음 예제와 같은 스키마를 사용하여 테이블의 SUPER 열 `a`에서 `StringType` 필드 `hello`를 쿼리할 수 있습니다.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", StructType(StructField("hello", StringType) ::Nil)) :: Nil)

val helloDF = sqlContext.read
.format("io.github.spark_redshift_community.spark.redshift")
.option("url", jdbcURL )
.option("tempdir", tempS3Dir)
.option("dbtable", "contains_super")
.schema(schema)
.load().selectExpr("a.hello")
```

다음 예제는 열 `a`에 구조체를 작성하는 방법을 보여줍니다.

```
import org.apache.spark.sql.types._
import org.apache.spark.sql._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", StructType(StructField("hello", StringType) ::Nil)) :: Nil)
val data = sc.parallelize(Seq(Row(Row("world"))))
val mydf = sqlContext.createDataFrame(data, schema)

mydf.write.format("io.github.spark_redshift_community.spark.redshift").
option("url", jdbcUrl).
option("dbtable", tableName).
option("tempdir", tempS3Dir).
option("tempformat", "CSV").
mode(SaveMode.Append).save
```

### MapType
<a name="spark-redshift-connector-complex-data-types-examples-maptype"></a>

`MapType`을 사용하여 데이터를 표현하려는 경우 스키마에서 `MapType` 데이터 구조를 사용하여 맵의 키에 해당하는 값을 검색할 수 있습니다. `MapType` 데이터 구조의 모든 키는 문자열 형식이어야 하며 모든 값은 int와 같은 동일한 형식이어야 한다는 점에 유의합니다.

다음 예는 열 `hello`에서 hello 키의 값을 가져오는 방법을 보여 줍니다.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", MapType(StringType, IntegerType))::Nil)

val helloDF = sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url", jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "contains_super")
    .schema(schema)
    .load().selectExpr("a['hello']")
```

### ArrayType
<a name="spark-redshift-connector-complex-data-types-examples-arraytype"></a>

열에 구조체 대신 배열이 포함된 경우 커넥터를 사용하여 배열의 첫 번째 요소를 쿼리할 수 있습니다.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", ArrayType(IntegerType)):: Nil)

val helloDF = sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url", jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "contains_super")
    .schema(schema)
    .load().selectExpr("a[0]")
```

### 제한 사항
<a name="spark-redshift-connector-complex-data-types-limitations"></a>

복잡한 데이터 형식을 Spark 커넥터와 함께 사용하면 다음과 같은 제한 사항이 있습니다.
+ 중첩된 모든 구조체 필드 이름과 맵 키는 소문자여야 합니다. 대문자가 포함된 복잡한 필드 이름을 쿼리하는 경우 스키마를 생략하고 `from_json` spark 함수를 사용하여 반환된 문자열을 로컬로 변환하는 해결 방법을 시도해 볼 수 있습니다.
+ 읽기 또는 쓰기 작업에 사용되는 모든 맵 필드에는 `StringType` 키만 있어야 합니다.
+ 복잡한 형식을 Redshift에 쓰기 위한 임시 형식 값은 `CSV`, `CSV GZIP` 및 `PARQUET `만 지원됩니다. `AVRO `를 사용하려고 하면 예외가 발생합니다.

# Amazon Redshift용 ODBC 드라이버 버전 2.x 연결 구성
<a name="odbc20-install"></a>

ODBC 연결을 사용하여 여러 서드 파티 SQL 클라이언트 도구 및 애플리케이션에서 Amazon Redshift 클러스터에 연결할 수 있습니다. 클라이언트 도구가 JDBC를 지원하는 경우에는 JDBC의 구성 용이성 때문에 ODBC가 아닌 JDBC 연결 유형을 사용하는 것이 좋을 수도 있습니다. 하지만 클라이언트 도구가 JDBC를 지원하지 않는 경우, 이 섹션의 단계에 따라 클라이언트 컴퓨터 또는 Amazon EC2 인스턴스에서 ODBC 연결을 설정할 수 있습니다.

Amazon Redshift는 Linux, Windows, Mac 운영 체제용의 64비트 ODBC 드라이버를 제공합니다. 32비트 ODBC 드라이버는 단종되었습니다. 긴급 보안 패치를 제외하고 32비트 ODBC 드라이버로의 추가 업데이트는 릴리스되지 않습니다.

ODBC 드라이버 변경 사항에 대한 최신 정보는 [변경 로그](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/CHANGELOG.md)를 참조하세요.

**Topics**
+ [

# ODBC URL 가져오기
](odbc20-getting-url.md)
+ [

# Microsoft Windows에서 Amazon Redshift ODBC 드라이버 사용
](odbc20-install-config-win.md)
+ [

# Linux에서 Amazon Redshift ODBC 드라이버 사용
](odbc20-install-config-linux.md)
+ [

# Apple macOS에서 Amazon Redshift ODBC 드라이버 사용
](odbc20-install-config-mac.md)
+ [

# 인증 방법
](odbc20-authentication-ssl.md)
+ [

# 데이터 유형 변환
](odbc20-converting-data-types.md)
+ [

# ODBC 드라이버 옵션
](odbc20-configuration-options.md)
+ [

# 이전 ODBC 드라이버 버전
](odbc20-previous-versions.md)

# ODBC URL 가져오기
<a name="odbc20-getting-url"></a>

Amazon Redshift는 Amazon Redshift 콘솔에 클러스터의 ODBC URL을 표시합니다. 이 URL에는 클라이언트 컴퓨터와 데이터베이스 간의 연결을 설정하는 데 필요한 정보가 포함되어 있습니다.

ODBC URL의 형식은 다음과 같습니다.

```
Driver={driver}; Server=endpoint_host; Database=database_name; UID=user_name; PWD=password; Port=port_number
```

위에 나와 있는 형식의 필드는 다음과 같은 값을 가집니다.


| Field | 값 | 
| --- | --- | 
| Driver | 사용할 64비트 ODBC 드라이버의 이름은 Amazon Redshift ODBC 드라이버(x64)입니다. | 
| Server | Amazon Redshift 클러스터의 엔드포인트 호스트입니다. | 
| Database | 클러스터에서 생성한 데이터베이스입니다. | 
| UID | 데이터베이스 연결 권한을 갖는 데이터베이스 사용자 계정의 사용자 이름입니다. 이 값은 클러스터 수준 권한이 아니라 데이터베이스 수준 권한이지만, 클러스터를 시작할 때 설정한 Redshift 관리자 계정을 사용할 수 있습니다. | 
| PWD | 데이터베이스에 연결하기 위한 데이터베이스 사용자 계정 암호입니다. | 
| Port | 클러스터를 시작할 때 지정한 포트 번호입니다. 방화벽이 있는 경우에는 이 포트가 사용할 수 있게 열려있어야 합니다. | 

다음은 ODBC URL의 예입니다. 

```
Driver={Amazon Redshift ODBC Driver (x64)}; Server=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com; Database=dev; UID=adminuser; PWD=insert_your_admin_user_password_here; Port=5439
```

ODBC URL을 찾을 수 있는 위치에 대한 자세한 내용은 [클러스터 연결 문자열 찾기](https://docs.aws.amazon.com/redshift/latest/mgmt/configuring-connections.html#connecting-connection-string)를 참조하세요.

# Microsoft Windows에서 Amazon Redshift ODBC 드라이버 사용
<a name="odbc20-install-config-win"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 Amazon Redshift ODBC 드라이버를 설치해야 합니다. 드라이버를 설치하는 컴퓨터마다 다음과 같은 시스템 요구 사항이 적용됩니다.
+ 시스템에 대한 관리자 권한 
+ 시스템이 다음 시스템 요구 사항 충족
  + 다음 운영 체제 중 하나:
    + Windows 10 또는 8.1
    + Windows Server 2019, 2016 또는 2012
  + 사용 가능한 디스크 공간 100MB
  + 설치된 64비트 Windows용 Visual Studio 2015용 Visual C\$1\$1 재배포 가능 패키지 Microsoft 웹사이트의 [Visual Studio 2022용 Visual C\$1\$1 재배포 가능 패키지 다운로드](https://visualstudio.microsoft.com/downloads/#microsoft-visual-c-redistributable-for-visual-studio-2022)에서 설치 패키지를 다운로드할 수 있습니다.

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc20-install-win"></a>

Windows 운영 체제용 Amazon Redshift ODBC 드라이버를 다운로드하여 설치하려면 다음 절차를 따르세요. Amazon Redshift와 함께 사용하도록 인증되었고 특정 드라이버가 필요한 서드 파티 애플리케이션을 실행하고 있다면 다른 드라이버만 사용합니다.

ODBC 드라이버를 다운로드하고 설치하려면: 

1. [64비트 ODBC 드라이버 버전 2.1.15.0](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC64-2.1.15.0.msi)을 다운로드합니다. 

   이 드라이버의 이름은 **Amazon Redshift ODBC 드라이버(x64)**입니다.

1. [Amazon Redshift ODBC 드라이버 버전 2.x 라이선스](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/LICENSE)를 검토하세요.

1. .msi 파일을 두 번 클릭한 후 마법사의 단계에 따라 드라이버를 설치합니다.

# ODBC 연결을 위한 시스템 DSN 항목 생성
<a name="odbc20-dsn-win"></a>

ODBC 드라이버를 다운로드하여 설치한 후에는 데이터 원본 이름(DSN) 항목을 클라이언트 컴퓨터 또는 Amazon EC2 인스턴스에 추가합니다. SQL 클라이언트 도구는 이 데이터 원본을 사용하여 Amazon Redshift 데이터베이스에 연결할 수 있습니다.

사용자 DSN 대신 시스템 DSN을 생성하는 것이 좋습니다. 일부 애플리케이션은 다른 데이터베이스 사용자 계정을 사용하여 데이터를 로드하며, 다른 데이터베이스 사용자 계정으로 생성된 사용자 DSN을 감지하지 못할 수 있습니다.

**참고**  
AWS Identity and Access Management(IAM) 자격 증명 또는 자격 증명 공급자(IdP) 자격 증명을 사용한 인증의 경우 추가 단계가 필요합니다. 자세한 내용은 [IAM 자격 증명을 사용하도록 JDBC 또는 ODBC 연결 구성](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-iam-credentials-configure-jdbc-odbc.html)을 참조하세요.

ODBC 연결을 위한 시스템 DSN 항목을 생성하려면:

1. **시작** 메뉴에서 ‘ODBC 데이터 소스’를 입력합니다. **ODBC Data Sources(ODBC 데이터 소스)**를 선택합니다.

   Amazon Redshift에 연결하는 데 사용하는 클라이언트 애플리케이션과 동일한 비트를 가진 ODBC 데이터 원본 관리자를 선택해야 합니다.

1. **ODBC Data Source Administrator(ODBC 데이터 소스 관리자)**에서 **Driver(드라이버)** 탭을 선택하고 **Amazon Redshift ODBC Driver (x64)** 드라이버 폴더를 찾습니다.

1. 해당 컴퓨터의 모든 사용자가 이용할 수 있도록 드라이버를 구성하려면 **시스템 DSN(System DSN)** 탭을 선택하고, 본인의 데이터베이스 사용자 계정에서만 이용할 수 있도록 드라이버를 구성하려면 **사용자 DSN(User DSN)** 탭을 선택합니다.

1. **추가**를 선택합니다. **새 데이터 원본 생성(Create New Data Source)** 창이 열립니다.

1. **Amazon Redshift ODBC 드라이버(x64)**를 선택하고 **Finish(마침)**를 선택합니다. **Amazon Redshift ODBC 드라이버 DSN 설정(Amazon Redshift ODBC Driver DSN Setup)** 창이 열립니다.

1. **Connection Settings(연결 설정)** 섹션에 다음 정보를 입력합니다.
   + 

**데이터 소스 이름**  
 데이터 소스 이름을 입력합니다. 예를 들어 *Amazon Redshift 시작 안내서*에 따른 경우 `exampleclusterdsn`을 입력하면 이 DSN과 연결할 클러스터를 기억하기 쉽습니다.
   + 

**Server**  
 Amazon Redshift 클러스터의 엔드포인트 호스트를 지정합니다. 이 정보는 Amazon Redshift 콘솔의 클러스터 세부 정보 페이지에서 찾을 수 있습니다. 자세한 내용은 [Amazon Redshift에서 연결 구성](https://docs.aws.amazon.com/redshift/latest/mgmt/configuring-connections.html)을 참조하세요.
   + 

**Port**  
 데이터베이스가 사용하는 포트 번호를 입력합니다. 클러스터를 생성, 수정 또는 마이그레이션할 때 선택한 포트에 따라 선택한 포트에 대한 액세스를 허용합니다.
   + 

**데이터베이스**  
 Amazon Redshift 데이터베이스의 이름을 입력합니다. 데이터베이스 이름을 지정하지 않고 클러스터를 시작한 경우 `dev`를 입력합니다. 그렇지 않으면 시작 프로세스 중에 선택한 이름을 사용합니다. *Amazon Redshift 시작 안내서*에 따른 경우 `dev`를 입력합니다.

1. **Authentication(인증)** 섹션에서 표준 또는 IAM 인증을 구성하는 구성 옵션을 지정합니다.

1. **SSL Options(SSL 옵션)**을 선택하고 다음의 값을 지정합니다.
   + 

**인증 모드**  
SSL(Secure Sockets Layer)의 처리 모드를 선택합니다. 테스트 환경에서는 `prefer`를 사용할 수 있습니다. 그러나 프로덕션 환경 및 안전한 데이터 교환이 필요한 경우 `verify-ca` 또는 `verify-full`을 사용합니다.
   + 

**최소 TLS**  
선택 사항으로, 드라이버가 데이터 스토어에서 연결을 암호화하는 데 사용하도록 허용하는 TLS/SSL의 최소 버전을 선택합니다. 예를 들어 TLS 1.2를 지정하면 연결을 암호화하는 데 TLS 1.1을 사용할 수 없습니다. 기본 버전은 TLS 1.2입니다.

1.  **Proxy(프록시)** 탭에서 프록시 연결 설정을 지정합니다.

1. **Cursor(커서)** 탭에서 쿼리 결과를 SQL 클라이언트 도구 또는 애플리케이션에 반환하는 방법에 대한 옵션을 지정합니다.

1. **고급 옵션**에서 `logLevel`, `logPath`, `compression` 및 기타 옵션에 대한 값을 지정합니다.

1. **테스트**를 선택합니다. 클라이언트 컴퓨터가 Amazon Redshift 데이터베이스에 연결할 수 있으면 **Connection successful(연결 성공)** 메시지가 표시됩니다. 클라이언트 컴퓨터가 데이터베이스에 연결하지 못하는 경우에는 로그 파일을 생성하고 AWS Support 팀에 문의하여 문제를 해결할 수 있습니다. 로그 생성에 대한 자세한 내용은 (LINK)를 참조하세요.

1.  **확인**을 선택합니다.

# Linux에서 Amazon Redshift ODBC 드라이버 사용
<a name="odbc20-install-config-linux"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 Amazon Redshift ODBC 드라이버를 설치해야 합니다. 드라이버를 설치하는 컴퓨터마다 다음과 같은 시스템 요구 사항이 적용됩니다.
+ 시스템에 대한 루트 액세스 권한
+ 다음 배포판 중 하나:
  + Red Hat® Enterprise Linux®(RHEL) 8 이상
  + CentOS 8 이상
+ 사용 가능한 디스크 공간 150MB
+ unixODBC 2.2.14 이상
+ glibc 2.26 이상

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc20-install-linux"></a>

Linux용 Amazon Redshift ODBC 드라이버 버전 2.x를 다운로드하고 설치하려면:

1.  다음 드라이버를 다운로드합니다.
   + [x86 64비트 RPM 드라이버 버전 2.1.15.0](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit-2.1.15.0.x86_64.rpm) 
   + [ARM 64비트 RPM 드라이버 버전 2.1.15.0](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit-2.1.15.0.aarch64.rpm) 
**참고**  
32비트 ODBC 드라이버는 단종되었습니다. 긴급 보안 패치를 제외하고 추가 업데이트는 릴리스되지 않습니다.

1.  패키지를 다운로드한 위치로 이동한 다음, 다음 명령 중 하나를 실행합니다. Linux 배포판에 따라 올바른 명령을 사용하세요.

   RHEL 및 CentOS 운영 체제에서 다음 명령을 실행합니다.

   ```
   yum --nogpgcheck localinstall RPMFileName
   ```

   `RPMFileName`을 RPM 패키지 파일 이름으로 바꿉니다. 예를 들어 다음은 64비트 드라이버를 설치하는 명령입니다.

   ```
   yum --nogpgcheck localinstall AmazonRedshiftODBC-64-bit-2.x.xx.xxxx.x86_64.rpm
   ```

# ODBC 드라이버 관리자를 사용하여 ODBC 드라이버 구성
<a name="odbc20-config-linux"></a>

Linux에서 ODBC 드라이버 관리자를 사용하여 ODBC 연결 설정을 구성합니다. ODBC 드라이버 관리자는 구성 파일을 사용하여 ODBC 데이터 원본과 드라이버를 정의 및 구성합니다. 또한 사용하는 운영 체제에 따라 ODBC 드라이버 관리자도 달라집니다.

## unixODBC 드라이버 관리자를 사용하여 ODBC 드라이버 구성
<a name="odbc20-config-unixodbc-linux"></a>

Amazon Redshift ODBC 드라이버를 구성하려면 다음 파일이 필요합니다.
+ ` amazon.redshiftodbc.ini `
+ ` odbc.ini `
+ ` odbcinst.ini `

 기본 위치에 드라이버를 설치한 경우에는 `amazon.redshiftodbc.ini` 구성 파일이 `/opt/amazon/redshiftodbcx64`에 있습니다.

 또한 `/opt/amazon/redshiftodbcx64`에 샘플 `odbc.ini` 및 `odbcinst.ini` 파일이 있습니다. 이러한 파일을 Amazon Redshift ODBC 드라이버 및 데이터 원본 이름(DSN)을 구성하는 예제로 사용할 수 있습니다.

 Amazon Redshift ODBC 드라이버 설치 디렉터리를 구성 파일용으로 사용하는 것은 바람직하지 않습니다. 설치된 디렉터리의 샘플 파일은 오직 예를 제공하기 위한 용도일 뿐입니다. 나중에 Amazon Redshift ODBC 드라이버를 다시 설치하거나 새 버전으로 업그레이드하면 설치 디렉터리를 덮어씁니다. 설치 디렉터리의 파일에 대한 변경 사항은 손실됩니다.

 이를 방지하려면 `amazon.redshiftodbc.ini` 파일을 설치 디렉터리가 아닌 다른 디렉터리에 복사합니다. 이 파일을 사용자의 홈 디렉터리로 복사하는 경우에는 파일 이름 앞에 마침표(.)를 추가하여 숨김 파일로 지정하세요.

 `odbc.ini` 및 `odbcinst.ini` 파일의 경우 사용자의 홈 디렉터리에 있는 구성 파일을 사용하거나 다른 디렉터리에 새 버전을 생성합니다. 기본적으로 Linux 운영 체제는 사용자의 홈 디렉터리(`/home/$USER` 또는 `~/.`)에 `odbc.ini` 파일과 `odbcinst.ini` 파일이 있어야 합니다. 이러한 기본 파일은 숨김 파일이기 때문에 파일 이름 앞에 마침표(.)가 있습니다. 이러한 파일은 `-a` 플래그를 사용하여 디렉터리 내용을 나열하는 경우에만 표시됩니다.

 `odbc.ini` 및 `odbcinst.ini` 파일에 대해 어떤 옵션을 선택하든지 파일을 수정하여 드라이버 및 DSN 구성 정보를 추가합니다. 새로운 파일을 생성할 때도 마찬가지로 환경 변수를 설정하여 구성 파일의 위치를 지정해야 합니다.

 기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 버전의 `odbc.ini` 및 `odbcinst.ini` 구성 파일(`.odbc.ini` 및 `.odbcinst.ini`)을 사용하도록 구성됩니다. 또한 드라이버 설치 디렉터리에 있는 `amazon.redshiftodbc.ini` 파일을 사용하도록 구성됩니다. 이러한 구성 파일을 다른 위치에 저장하는 경우 드라이버 관리자가 파일을 찾을 수 있도록 다음에 설명된 환경 변수를 설정합니다.

 unixODBC 사용하는 경우 다음과 같이 합니다.
+  `ODBCINI`를 `odbc.ini` 파일의 전체 경로 및 파일 이름으로 설정합니다.
+  `ODBCSYSINI`를 `odbcinst.ini` 파일이 포함된 디렉토리의 전체 경로로 설정합니다.
+  `AMAZONREDSHIFTODBCINI`를 `amazon.redshiftodbc.ini` 파일의 전체 경로 및 파일 이름으로 설정합니다.

다음은 위의 값을 설정하는 예입니다.

```
export ODBCINI=/usr/local/odbc/odbc.ini 
export ODBCSYSINI=/usr/local/odbc 
export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini
```

## Linux에서 데이터 소스 이름(DSN)을 사용하여 연결 구성
<a name="odbc20-dsn-linux"></a>

데이터 소스 이름(DSN)을 사용하여 데이터 스토어에 연결할 경우 데이터 소스 이름(DSN)을 정의하도록 `odbc.ini` 파일을 구성합니다. `odbc.ini` 파일의 속성을 설정하여 데이터 저장소에 대한 연결 정보를 지정하는 DSN을 생성합니다.

Linux 운영 체제에서는 다음 형식을 사용합니다.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file
Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

다음 예에서는 Linux 운영 체제에서 64비트 ODBC 드라이버를 사용하는 `odbc.ini`에 대한 구성을 보여줍니다.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64)

[Amazon_Redshift_x64]
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932Database=dev
locale=en-US
```

## Linux에서 DSN 없이 연결 구성
<a name="odbc20-no-dsn-linux"></a>

 DSN이 없는 연결을 통해 데이터 저장소에 연결하려면 `odbcinst.ini` 파일에 드라이버를 정의합니다. 그런 다음 애플리케이션에 DSN이 없는 연결 문자열을 제공합니다.

Linux 운영 체제에서는 다음 형식을 사용합니다.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

다음 예에서는 Linux 운영 체제에서 64비트 ODBC 드라이버를 사용하는 `odbcinst.ini`에 대한 구성을 보여줍니다.

```
[ODBC Drivers]
Amazon Redshift ODBC Driver (x64)=Installed

[Amazon Redshift ODBC Driver (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so
```

# Apple macOS에서 Amazon Redshift ODBC 드라이버 사용
<a name="odbc20-install-config-mac"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 Amazon Redshift ODBC 드라이버를 설치해야 합니다. 드라이버를 설치하는 컴퓨터마다 다음과 같은 시스템 요구 사항이 적용됩니다.
+ 시스템에 대한 루트 액세스 권한 
+ Apple macOS 시스템 요구 사항:
  + 64비트 버전의 Apple macOS 버전 11.7 이상(예: Apple macOS Big Sur, Monterey, Ventura 이상)이 필요합니다. Redshift ODBC 드라이버는 64비트 클라이언트 애플리케이션만 지원합니다.
  + 사용 가능한 디스크 공간 150MB
  + 드라이버는 iODBC 3.52.9 이상 또는 unixODBC 2.3.7 이상으로 빌드된 애플리케이션을 지원합니다.

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc20-install-mac"></a>

Apple macOS용 Amazon Redshift ODBC 드라이버를 다운로드하여 설치하려면 다음 절차를 따르세요. Amazon Redshift와 함께 사용하도록 인증되었고 특정 드라이버가 필요한 서드 파티 애플리케이션을 실행하고 있다면 다른 드라이버만 사용합니다.

ODBC 드라이버를 다운로드하고 설치하려면: 

1. [64비트 ODBC 드라이버 버전 2.1.15.0](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit.2.1.15.0.universal.pkg)을 다운로드합니다. 

   이 드라이버는 x86\$164 아키텍처와 arm64 아키텍처 모두에서 지원됩니다. 이 드라이버의 이름은 **Amazon Redshift ODBC 드라이버(x64)**입니다.

1. [Amazon Redshift ODBC 드라이버 버전 2.x 라이선스](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/LICENSE)를 검토하세요.

1. .pkg 파일을 두 번 클릭한 후 마법사의 단계에 따라 드라이버를 설치합니다. 또는 다음 명령을 실행합니다.

   ```
   sudo installer -pkg PKGFileName -target /
   ```

   `PKGFileName`을 pkg 패키지 파일 이름으로 바꿉니다. 예를 들어 다음은 64비트 드라이버를 설치하는 명령입니다.

   ```
   sudo installer -pkg ./AmazonRedshiftODBC-64-bit.X.X.XX.X.universal.pkg -target /
   ```

# ODBC 드라이버 관리자를 사용하여 ODBC 드라이버 구성
<a name="odbc20-config-mac"></a>

Mac에서 ODBC 드라이버 관리자를 사용하여 ODBC 연결 설정을 구성합니다. ODBC 드라이버 관리자는 구성 파일을 사용하여 ODBC 데이터 원본과 드라이버를 정의 및 구성합니다. 또한 사용하는 운영 체제에 따라 ODBC 드라이버 관리자도 달라집니다.

## iODBC 또는 unixODBC 드라이버 관리자를 사용하여 ODBC 드라이버 구성
<a name="odbc20-config-iodbc-mac"></a>

Amazon Redshift ODBC 드라이버를 구성하려면 다음 파일이 필요합니다.
+ ` amazon.redshiftodbc.ini `
+ ` odbc.ini `
+ ` odbcinst.ini `

 기본 위치에 드라이버를 설치한 경우에는 `amazon.redshiftodbc.ini` 구성 파일이 `/opt/amazon/redshiftodbcx64`에 있습니다.

 또한 `/opt/amazon/redshiftodbcx64`에 샘플 `odbc.ini` 및 `odbcinst.ini` 파일이 있습니다. 이러한 파일을 Amazon Redshift ODBC 드라이버 및 데이터 원본 이름(DSN)을 구성하는 예제로 사용할 수 있습니다. 설치된 디렉터리의 샘플 파일은 오직 예를 제공하기 위한 용도일 뿐입니다.

 Amazon Redshift ODBC 드라이버 설치 디렉터리를 구성 파일용으로 사용하는 것은 바람직하지 않습니다. 나중에 Amazon Redshift ODBC 드라이버를 다시 설치하거나 새 버전으로 업그레이드하면 설치 디렉터리를 덮어씁니다. 설치 디렉터리의 파일에 대한 변경 사항은 손실됩니다.

 이를 방지하려면 `odbc.ini`, `odbcinst.ini` 및 `amazon.redshiftodbc.ini` 파일을 설치 디렉터리가 아닌 다른 디렉터리에 복사합니다. 이러한 파일을 사용자의 홈 디렉터리로 복사하는 경우에는 파일 이름 앞에 마침표(.)를 추가하여 숨김 파일로 지정하세요.

 파일을 수정하여 DSN 구성 정보를 추가합니다. 새로운 파일을 생성할 때도 마찬가지로 환경 변수를 설정하여 구성 파일의 위치를 지정해야 합니다.

다음은 이러한 환경 변수 설정의 예입니다.

```
export ODBCINI=/Library/ODBC/odbc.ini
export ODBCSYSINI=/Library/ODBC
export ODBCINSTINI=${ODBCSYSINI}/odbcinst.ini
```

명령줄 애플리케이션의 경우: 쉘 시작 파일(예: `~/.bash_profile` 또는 `~/.zshrc`)에 내보내기 명령을 추가합니다.

지원되는 드라이버 관리자 버전은 [여기](https://docs.aws.amazon.com/redshift/latest/mgmt/odbc20-install-config-mac.html)를 참조하세요.

### Apple macOS에서 데이터 소스 이름(DSN)을 사용하여 연결 구성
<a name="odbc20-dsn-mac"></a>

데이터 소스 이름(DSN)을 사용하여 데이터 스토어에 연결할 경우 데이터 소스 이름(DSN)을 정의하도록 `odbc.ini` 파일을 구성합니다. `odbc.ini` 파일의 속성을 설정하여 Redshift 데이터 웨어하우스에 대한 연결 정보를 지정하는 DSN을 생성합니다.

Apple macOS에서는 다음 형식을 사용합니다.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file
Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

다음 예에서는 Apple macOS에서 64비트 ODBC 드라이버를 사용하는 `odbc.ini`에 대한 구성을 보여줍니다.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64)

[Amazon_Redshift_x64]
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.dylib
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

### Apple macOS에서 DSN 없이 연결 구성
<a name="odbc20-no-dsn-mac"></a>

 DSN이 없는 연결을 통해 Redshift 데이터 웨어하우스에 연결하려면 `odbcinst.ini` 파일에 드라이버를 정의합니다. 그런 다음 애플리케이션에 DSN이 없는 연결 문자열을 제공합니다.

Apple macOS에서는 다음 형식을 사용합니다.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

다음 예에서는 Apple macOS에서 64비트 ODBC 드라이버를 사용하는 `odbcinst.ini`에 대한 구성을 보여줍니다.

```
[ODBC Drivers]
Amazon Redshift ODBC Driver (x64)=Installed

[Amazon Redshift ODBC Driver (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.dylib
```

# 인증 방법
<a name="odbc20-authentication-ssl"></a>

무단 액세스로부터 데이터를 보호하기 위해 Amazon Redshift 데이터 스토어는 사용자 자격 증명을 사용하여 모든 연결을 인증할 것을 요구합니다.

다음 표는 Amazon Redshift ODBC 드라이버 버전 2.x에 연결하는 데 사용할 수 있는 각 인증 방법별로 필수 및 선택적 연결 옵션을 보여줍니다.


| 인증 방법 | 필수 | 선택 | 
| --- | --- | --- | 
|  표준  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |   | 
|  IAM 프로필  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  IAM 자격 증명  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  AD FS  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  Azure AD  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  JWT  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  | 
|  Okta  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  Ping Federate  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  브라우저 Azure AD  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  브라우저 SAML  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  인증 프로필  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |   | 
|  브라우저 Azure AD OAUTH2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)   별도로 설정되지 않는 경우 **호스트(Host)**에서 **ClusterID**와 **리전(Region)**을 설정해야 합니다.   | 
|  AWS IAM Identity Center  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/odbc20-authentication-ssl.html)  | 

## 외부 보안 인증 서비스 사용
<a name="odbc20-authentication-external"></a>

Amazon Redshift ODBC 드라이버의 Windows 버전은 AD FS, Azure AD 및 Okta에 대한 기본 제공 지원 외에, 다른 보안 인증 서비스에 대한 지원도 제공합니다. 이 드라이버는 선택한 SAML 기반 보안 인증 공급자 플러그인을 사용하여 연결을 인증할 수 있습니다.

Windows에서 외부 보안 인증 서비스를 구성하려면

1. 필요에 따라 보안 인증 공급자 플러그인 및 기타 인증 파라미터를 지정하는 IAM 프로필을 생성합니다. 이 프로필은 ASCII로 인코딩해야 하며 다음 키-값 페어를 포함해야 합니다. 여기서 `PluginPath`는 플러그인 애플리케이션의 전체 경로입니다.

   ```
   plugin_name = PluginPath
   ```

   예:

   ```
   plugin_name = C:\Users\kjson\myapp\CredServiceApp.exe 
   ```

   프로필을 생성하는 방법에 대한 자세한 내용은 Amazon Redshift 클러스터 관리 가이드에서 [구성 프로필 사용](https://docs.aws.amazon.com/redshift/latest/mgmt/options-for-providing-iam-credentials.html#using-configuration-profile)을 참조하세요.

1. 이 프로필을 사용하도록 드라이버를 구성합니다. 이 드라이버는 프로필에 지정된 인증 설정을 감지하고 사용합니다.

# 데이터 유형 변환
<a name="odbc20-converting-data-types"></a>

Amazon Redshift ODBC 드라이버 버전 2.x는 Amazon Redshift 및 SQL 데이터 유형 간 변환으로 많은 일반 데이터 유형을 지원합니다.

다음 표에는 지원되는 데이터 형식 매핑이 나와 있습니다.


| Amazon Redshift 형식 | SQL 형식 | 
| --- | --- | 
|  BIGINT  |  SQL\$1BIGINT  | 
|  BOOLEAN  |  SQL\$1BIT  | 
|  CHAR  |  SQL\$1CHAR  | 
|  DATE  |  SQL\$1TYPE\$1DATE  | 
|  DECIMAL  |  SQL\$1NUMERIC  | 
|  DOUBLE PRECISION  |  SQL\$1DOUBLE  | 
|  GEOGRAPHY  |  SQL\$1 LONGVARBINARY  | 
|  GEOMETRY  |  SQL\$1 LONGVARBINARY  | 
|  INTEGER  |  SQL\$1INTEGER  | 
|  REAL  |  SQL\$1REAL  | 
|  SMALLINT  |  SQL\$1SMALLINT  | 
|  SUPER  |  SQL\$1LONGVARCHAR  | 
|  TEXT  |  SQL\$1LONGVARCHAR  | 
|  TIME  |  SQL\$1TYPE\$1TIME  | 
|  TIMETZ  |  SQL\$1TYPE\$1TIME  | 
|  TIMESTAMP  |  SQL\$1TYPE\$1 TIMESTAMP  | 
|  TIMESTAMPTZ  |  SQL\$1TYPE\$1 TIMESTAMP  | 
|  VARBYTE  |  SQL\$1LONGVARBINARY  | 
|  VARCHAR  |  SQL\$1VARCHAR  | 

# ODBC 드라이버 옵션
<a name="odbc20-configuration-options"></a>

드라이버 구성 옵션을 사용하여 Amazon Redshift ODBC 드라이버의 동작을 제어할 수 있습니다. 드라이버 옵션은 대소문자를 구분하지 않습니다.

Microsoft Windows에서는 일반적으로 데이터 원본 이름(DSN)을 구성할 때 드라이버 옵션을 설정합니다. 프로그래밍 방식으로 연결할 때 또는 `HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\your_DSN`에서 레지스트리 키를 추가하거나 변경하여 연결 문자열에 드라이버 옵션을 설정할 수도 있습니다.

Linux에서는 `odbc.ini` 및 `amazon.redshiftodbc.ini` 파일에서 드라이버 구성 옵션을 설정합니다. `amazon.redshiftodbc.ini` 파일에서 설정하는 구성 옵션이 모든 연결에 적용됩니다. 반대로 `odbc.ini` 파일에서 설정하는 구성 옵션은 연결에 따라 다릅니다. `odbc.ini`에서 설정하는 구성 옵션이 `amazon.redshiftodbc.ini`에서 설정하는 구성 옵션보다 우선합니다.

다음은 Amazon Redshift ODBC 드라이버 버전 2.x 드라이버에 지정할 수 있는 옵션에 대한 설명입니다.

## AccessKeyID
<a name="odbc20-accesskeyid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 사용자 또는 역할에 대한 IAM 액세스 키입니다. 이 파라미터를 설정할 경우 **SecretAccessKey**도 지정해야 합니다

이 파라미터는 선택 사항입니다.

## app\$1id
<a name="odbc20-app-id-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift 애플리케이션과 연결된 Okta 제공 고유 ID입니다.

이 파라미터는 선택 사항입니다.

## ApplicationName
<a name="odbc20-application_name-option"></a>
+ **기본값** – 없음
+ **데이터 유형** – 문자열

감사 목적으로 Amazon Redshift에 전달할 클라이언트 애플리케이션의 이름입니다. 입력하는 애플리케이션 이름은 [SYS\$1CONNECTION\$1LOG](https://docs.aws.amazon.com/redshift/latest/dg/SYS_CONNECTION_LOG.html) 테이블의 'application\$1name' 열에 나타납니다. 이렇게 하면 문제를 디버깅할 때 연결 소스를 추적하고 문제를 해결할 수 있습니다.

이 파라미터는 선택 사항입니다.

## app\$1name
<a name="odbc20-app-name-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 대한 연결을 인증하는 데 사용하는 Okta 애플리케이션의 이름입니다.

이 파라미터는 선택 사항입니다.

## AuthProfile
<a name="odbc20-authprofile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

연결 설정을 관리하는 데 사용되는 인증 프로필입니다. 이 파라미터를 설정할 경우 **AccessKeyID**와 **SecretAccessKey**도 설정해야 합니다 

이 파라미터는 선택 사항입니다.

## AuthType
<a name="odbc20-authtype-option"></a>
+ **기본값** - 표준(Standard)
+ **데이터 형식** – 문자열

이 옵션은 Amazon Redshift ODBC 드라이버 DSN 설정 대화 상자를 사용하여 DSN을 구성할 때 드라이버가 사용하는 인증 모드를 지정합니다.
+  표준(Standard): Amazon Redshift 사용자 이름과 암호를 사용하는 표준 인증입니다.
+  AWS Profile(프로필): 프로필을 사용하는 IAM 인증입니다.
+  AWS IAM Credentials(IAM 보안 인증 정보): IAM 보안 인증 정보를 사용하는 IAM 인증입니다.
+  자격 증명 공급자(Identity Provider): AD FS: Active Directory Federation Services(AD FS)를 사용하는 IAM 인증입니다.
+  ID 제공업체: 인증 플러그인: AWS IAM Identity Center 토큰 또는 AWS IAM Identity Center에 연결된 웹 ID 제공업체의 OpenID Connect(OIDC) JSON 기반 자격 증명 토큰(JWT)을 수락하는 권한 부여 플러그인입니다.
+  자격 증명 공급자(Identity Provider): Azure AD: Azure AD 포털을 사용한 IAM 인증입니다.
+  자격 증명 공급자(Identity Provider): JWT: JSON 웹 토큰(JWT)을 사용한 IAM 인증입니다.
+  자격 증명 공급자(Identity Provider): Okta: Okta를 사용한 IAM 인증입니다.
+  자격 증명 공급자(Identity Provider): PingFederate: PingFederate를 사용한 IAM 인증입니다.

이 옵션은 Windows 드라이버에서 Amazon Redshift ODBC 드라이버 DSN 설정 대화 상자를 사용하여 DSN을 구성하는 경우에만 사용할 수 있습니다. 연결 문자열 또는 Windows 이외의 시스템을 사용하여 연결을 구성하면, 드라이버가 지정된 자격 증명에 따라 표준, AWS 프로필 또는 AWS IAM 보안 인증 중 어떤 인증 방법을 사용할지 자동으로 결정합니다. 자격 증명 공급자를 사용하려면 **plugin\$1name** 속성을 설정해야 합니다.

이 파라미터는 필수 사항입니다.

## AutoCreate
<a name="odbc20-autocreate-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

지정된 사용자가 존재하지 않을 경우 드라이버가 새 사용자를 생성할지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: **UID**로 지정된 사용자가 없는 경우 드라이버가 새 사용자를 생성합니다.
+  0 \$1 FALSE: 드라이버가 새 사용자를 생성하지 않습니다. 지정된 사용자가 없으면 인증에 실패합니다.

이 파라미터는 선택 사항입니다.

## CaFile
<a name="odbc20-cafile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

일부 IAM 인증 방식에 사용되는 CA 인증서 파일의 파일 경로입니다.

 이 파라미터는 Linux에서만 사용 가능합니다.

이 파라미터는 선택 사항입니다.

## client\$1id
<a name="odbc20-client-id-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Azure AD에서 Amazon Redshift 애플리케이션과 연결된 클라이언트 ID입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## client\$1 secret
<a name="odbc20-client-secret-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 Azure AD에서 Amazon Redshift 애플리케이션과 연결된 비밀 키입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## ClusterId
<a name="odbc20-clusterid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

연결하려는 Amazon Redshift 클러스터의 이름입니다. IAM 인증에 사용됩니다. 이 클러스터 ID는 **Server** 파라미터에 지정되어 있지 않습니다.

이 파라미터는 선택 사항입니다.

## 압축
<a name="odbc20-compression-option"></a>
+ **기본값** - 끄기
+ **데이터 형식** – 문자열

Amazon Redshift 서버와 클라이언트 또는 드라이버 간의 유선 프로토콜 통신에 사용되는 압축 방법입니다.

다음 값을 지정할 수 있습니다.
+ lz4: Amazon Redshift와의 유선 프로토콜 통신에 사용되는 압축 방법을 `lz4`로 설정합니다.
+ zstd: Amazon Redshift와의 유선 프로토콜 통신에 사용되는 압축 방법을 `zstd`로 설정합니다.
+  off: Amazon Redshift와의 유선 프로토콜 통신에 압축을 사용하지 않습니다.

이 파라미터는 선택 사항입니다.

## 데이터베이스
<a name="odbc20-database-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

액세스할 Amazon Redshift 데이터베이스의 이름입니다.

이 파라미터는 필수 사항입니다.

## DatabaseMetadataCurrentDbOnly
<a name="odbc20-database-metadata-option"></a>
+ **기본값** – 1
+ **데이터 형식** – 부울

드라이버가 여러 데이터베이스 및 클러스터의 메타데이터를 반환하는지 여부를 지정하는 부울 값입니다.
+ 1 \$1 TRUE: 드라이버가 현재 데이터베이스의 메타데이터만 반환합니다.
+  0 \$1 FALSE. 드라이버가 여러 Amazon Redshift 데이터베이스 및 클러스터의 메타데이터를 반환합니다.

이 파라미터는 선택 사항입니다.

## dbgroups\$1filter
<a name="odbc20-dbgroups-filter-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Azure, 브라우저 Azure 및 브라우저 SAML 인증 유형을 사용할 경우 Amazon Redshift에 대한 SAML 응답에서 수신된 DbGroups를 필터링하기 위해 지정할 수 있는 정규식입니다.

이 파라미터는 선택 사항입니다.

## 드라이버
<a name="odbc20-driver-option"></a>
+ **기본값** - Amazon Redshift ODBC 드라이버(x64)
+ **데이터 형식** – 문자열

드라이버의 이름입니다. 지원되는 유일한 값은 **Amazon Redshift ODBC 드라이버(x64)(Amazon Redshift ODBC Driver (x64))**입니다.

**DSN**를 설정하지 않을 경우 이 파라미터가 필요합니다.

## DSN
<a name="odbc20-dsn-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

드라이버 데이터 소스의 이름입니다. 애플리케이션이 SQLDriverConnect API에 DSN을 지정합니다.

**드라이버(Driver)**를 설정하지 않을 경우 이 파라미터가 필요합니다.

## EndpointUrl
<a name="odbc20-endpointurl-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IAM 인증을 위해 Amazon Redshift Coral Service와 통신하는 데 사용되는 재정의 엔드포인트입니다.

이 파라미터는 선택 사항입니다.

## ForceLowercase
<a name="odbc20-forcelowercase-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 Single Sing-On 인증을 사용할 때 자격 증명 공급자에서 Amazon Redshift로 전송된 모든 DbGroups를 소문자로 표시할지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 ID 공급자에서 전송된 모든 DbGroups를 소문자로 표시합니다.
+  0 \$1 FALSE: 드라이버가 DbGroups를 변경하지 않습니다.

이 파라미터는 선택 사항입니다.

## group\$1federation
<a name="odbc20-group-federation-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

프로비저닝된 클러스터에서 임시 클러스터 보안 인증 정보를 얻는 데 `getClusterCredentialsWithIAM` API를 사용할지 여부를 지정하는 부울입니다. 이 옵션을 사용하면 IAM 사용자가 프로비저닝된 클러스터의 Redshift 데이터베이스 역할과 통합할 수 있습니다. 이 옵션은 Redshift Serverless 네임스페이스에 적용되지 않습니다.
+  1 \$1 TRUE: 드라이버가 `getClusterCredentialsWithIAM` API를 사용하여 프로비저닝된 클러스터에서 임시 클러스터 보안 인증 정보를 얻습니다.
+  0 \$1 FALSE: 드라이버가 기본 `getClusterCredentials` API를 사용하여 프로비저닝된 클러스터에서 임시 클러스터 보안 인증 정보를 얻습니다.

이 파라미터는 선택 사항입니다.

## https\$1proxy\$1host
<a name="odbc20-https-proxy-host-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

IAM 인증 프로세스를 통과하도록 하려는 프록시 서버의 호스트 이름 또는 IP 주소입니다.

이 파라미터는 선택 사항입니다.

## https\$1proxy\$1password
<a name="odbc20-https-proxy-password-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

프록시 서버에 액세스하는 데 사용하는 암호입니다. IAM 인증에 사용됩니다.

이 파라미터는 선택 사항입니다.

## https\$1proxy\$1port
<a name="odbc20-https-proxy-port-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 정수

프록시 서버가 클라이언트 연결을 수신 대기하는 데 사용하는 포트 번호입니다. IAM 인증에 사용됩니다.

이 파라미터는 선택 사항입니다.

## https\$1proxy\$1username
<a name="odbc20-https-proxy-username-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

프록시 서버에 액세스하는 데 사용하는 사용자 이름입니다. IAM 인증에 사용됩니다.

이 파라미터는 선택 사항입니다.

## IAM
<a name="odbc20-iam-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 IAM 인증 방법을 사용하여 연결을 인증하는지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 IAM 인증 방법(액세스 키와 비밀 키의 페어, 프로필 또는 보안 인증 서비스 사용) 중 하나를 사용합니다.
+  0 \$1 FALSE. 드라이버가 표준 인증(데이터베이스 사용자 이름 및 암호 사용)을 사용합니다.

이 파라미터는 선택 사항입니다.

## idc\$1client\$1display\$1name
<a name="odbc20-idc_client_display_name-option"></a>
+ **기본값** - Amazon Redshift ODBC 드라이버
+ **데이터 형식** – 문자열

BrowserIdcAuthPlugin을 사용하는 클라이언트에 사용할 표시 이름입니다.

이 파라미터는 선택 사항입니다.

## idc\$1region
<a name="odbc20-idc_region"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center 인스턴스가 위치한 AWS 리전입니다.

이 파라미터는 plugin\$1name 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## idp\$1host
<a name="odbc20-idp-host-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 인증하는 데 사용하는 자격 증명 공급자(IdP) 호스트입니다.

이 파라미터는 선택 사항입니다.

## idp\$1port
<a name="odbc20-idp-port-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 정수

Amazon Redshift에 인증하는 데 사용하는 자격 증명 공급자(IdP)용 포트입니다. 클러스터를 생성, 수정 또는 마이그레이션할 때 선택한 포트에 따라 선택한 포트에 대한 액세스를 허용합니다.

이 파라미터는 선택 사항입니다.

## idp\$1response\$1timeout
<a name="odbc20-idp-response-timeout-option"></a>
+ **기본값** – 120
+ **데이터 형식** – 정수

브라우저 플러그인을 통해 SAML 또는 Azure AD 서비스를 사용할 때 드라이버가 자격 증명 공급자의 SAML 응답을 기다리는 시간(초)입니다.

이 파라미터는 선택 사항입니다.

## idp\$1tenant
<a name="odbc20-idp-tenant-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 Amazon Redshift 애플리케이션과 연결된 Azure AD 테넌트 ID입니다.

Azure AD 서비스를 통해 인증하는 경우 이 파라미터는 필수입니다.

## idp\$1partition
<a name="odbc20-idp-partition-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

ID 제공업체(IdP)가 구성된 클라우드 파티션을 지정합니다. 드라이버가 연결하는 IdP 인증 엔드포인트를 결정합니다.

이 파라미터를 비워 두면 드라이버는 기본적으로 상용 파티션으로 설정됩니다. 가능한 값은 다음과 같습니다.
+ `us-gov`: IdP가 Azure Government에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD Government는 `login.microsoftonline.us` 엔드포인트를 사용합니다.
+ `cn`: IdP가 중국 클라우드 파티션에 구성된 경우 이 값을 사용합니다. 예를 들어 Azure AD China는 `login.chinacloudapi.cn` 엔드포인트를 사용합니다.

이 파라미터는 선택 사항입니다.

## idp\$1use\$1https\$1proxy
<a name="odbc20-idp-use-https-proxy-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 프록시 서버를 통해 아이덴티티 제공업체(IdP)에 대한 인증 프로세스를 통과하는지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 프록시 서버를 통해 IdP 인증 프로세스를 통과합니다.
+  0 \$1 FALSE. 드라이버가 프록시 서버를 통해 IdP 인증 프로세스를 통과하지 않습니다.

이 파라미터는 선택 사항입니다.

## InstanceProfile
<a name="odbc20-instanceprofile-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

인증에 프로필을 사용하도록 구성된 경우 드라이버가 Amazon EC2 인스턴스 프로파일을 사용하는지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 Amazon EC2 인스턴스 프로파일을 사용합니다.
+  0 \$1 FALSE. 드라이버가 프로필 이름 옵션(**Profile(프로필)**)에 지정된 함께 묶은 역할 프로필을 대신 사용합니다.

이 파라미터는 선택 사항입니다.

## issuer\$1url
<a name="odbc20-issuer_url"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 AWS IAM Identity Center 서버의 인스턴스 엔드포인트를 가리킵니다.

이 파라미터는 plugin\$1name 구성 옵션에서 `BrowserIdcAuthPlugin`을 사용하여 인증하는 경우에만 필요합니다.

## KeepAlive
<a name="odbc20-keepalive-option"></a>
+ **기본값** – 1
+ **데이터 형식** – 부울

드라이버가 TCP KeepAlive를 사용하여 연결 시간 초과를 방지하는지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 TCP KeepAlive를 사용하여 연결 시간 초과를 방지합니다.
+  0 \$1 FALSE. 드라이버가 TCP KeepAlive를 사용하지 않습니다.

이 파라미터는 선택 사항입니다.

## KeepAliveCount
<a name="odbc20-keepalivecount-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

연결이 끊긴 것으로 간주할 때까지 손실될 수 있는 TCP keepalive 패킷의 수입니다. 이 파라미터를 0으로 설정하면 드라이버가 이 설정에 시스템 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## KeepAliveInterval
<a name="odbc20-keepaliveinterval-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

TCP keepalive가 재전송되는 시간 간격(초)입니다. 이 파라미터를 0으로 설정하면 드라이버가 이 설정에 시스템 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## KeepAliveTime
<a name="odbc20-keepalivetime-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

드라이버가 TCP keepalive 패킷을 전송할 때까지 아무런 작업 없이 대기하는 시간(초)입니다. 이 파라미터를 0으로 설정하면 드라이버가 이 설정에 시스템 기본값을 사용합니다.

이 파라미터는 선택 사항입니다.

## listen\$1port
<a name="odbc20-listen-port-option"></a>
+ **기본값** – 7890
+ **데이터 형식** – 정수

드라이버가 브라우저 플러그인을 통해 SAML, Azure AD 또는 AWS IAM Identity Center 서비스를 사용할 때 ID 제공업체 또는 권한 부여 코드로부터 SAML 응답을 받는 데 사용하는 포트입니다.

이 파라미터는 선택 사항입니다.

## login\$1url
<a name="odbc20-login-url-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

일반 브라우저 SAML 플러그인을 사용할 때 자격 증명 공급자의 웹 사이트에 있는 리소스의 URL입니다.

브라우저 플러그인을 통해 SAML 또는 Azure AD 서비스로 인증하는 경우 이 파라미터는 필수입니다.

## loginToRp
<a name="odbc20-logintorp-option"></a>
+ **기본값** - urn:amazon:webservices
+ **데이터 형식** – 문자열

AD FS 인증 유형에 사용할 신뢰 당사자 트러스트입니다.

이 문자열은 선택 사항입니다.

## LogLevel
<a name="odbc20-loglevel-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

이 속성을 사용하여 드라이버에서 로깅을 활성화하거나 비활성화하고 로그 파일에 포함되는 세부 정보의 양을 지정합니다. 로깅은 성능을 저하시킬 뿐만 아니라 대용량의 디스크 공간을 소모할 수 있기 때문에, 문제를 포착하기에 충분한 시간 동안만 로깅을 활성화하는 것이 좋습니다.

 이 속성을 다음 값 중 하나로 설정합니다.
+  0: 끔. 모든 로깅을 사용 중지합니다.
+  1: 오류. 드라이버가 계속 실행되지만 오류가 발생할 수 있는 오류 이벤트를 로깅합니다.
+  2: API\$1CALL. 함수 인수 값을 사용하여 ODBC API 함수 호출을 로깅합니다.
+  3: 정보. 드라이버의 진행 상황을 설명하는 일반 정보를 로깅합니다.
+  4: MSG\$1PROTOCOL. 드라이버의 메시지 프로토콜에 대한 자세한 정보를 로깅합니다.
+  5: DEBUG. 모든 드라이버 작업을 로깅합니다.
+  6: DEBUG\$1APPEND. 모든 드라이버 작업에 대한 로그를 계속 추가합니다.

로깅을 사용하면 **LogPath** 속성에 지정한 위치에 드라이버가 다음 로그 파일을 생성합니다.
+  연결의 핸드셰이크 중에 발생하는 드라이버 작업을 로깅하는 `redshift_odbc.log.1` 파일입니다.
+  데이터베이스에 연결한 후의 모든 드라이버 작업에 대한 `redshift_odbc.log` 파일입니다.

이 파라미터는 선택 사항입니다.

## LogPath
<a name="odbc20-logpath-option"></a>
+ **기본값** - OS별 TEMP 디렉터리
+ **데이터 형식** – 문자열

**LogLevel**이 0보다 높은 경우 드라이버가 로그 파일을 저장하는 폴더의 전체 경로입니다.

이 파라미터는 선택 사항입니다.

## Min\$1TLS
<a name="odbc20-min-tls-option"></a>
+ **기본값** – 1.2
+ **데이터 형식** – 문자열

 드라이버가 데이터 스토어에서 연결을 암호화하는 데 사용하도록 허용하는 TLS/SSL의 최소 버전입니다. 예를 들어 TLS 1.2를 지정하면 연결을 암호화하는 데 TLS 1.1을 사용할 수 없습니다.

Min\$1TLS는 다음 값으로 지정할 수 있습니다.
+  1.0: 연결에 TLS 1.0 이상을 사용해야 합니다.
+  1.1: 연결에 TLS 1.1 이상을 사용해야 합니다.
+  1.2: 연결에 TLS 1.2 이상을 사용해야 합니다.

이 파라미터는 선택 사항입니다.

## partner\$1spid
<a name="odbc20-partner-spid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

PingFederate 서비스를 사용하여 연결을 인증할 때 사용할 파트너 SPID(서비스 공급자 ID) 값입니다.

이 파라미터는 선택 사항입니다.

## Password \$1 PWS
<a name="odbc20-password-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

사용자 필드(**UID**\$1**User(사용자)**\$1**LogonID**)에서 제공한 데이터베이스 사용자 이름에 해당하는 암호입니다.

이 파라미터는 선택 사항입니다.

## plugin\$1name
<a name="odbc20-plugin-name-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

인증에 사용할 보안 인증 공급자 플러그인 이름입니다.

 다음과 같은 값이 지원됩니다.
+  `ADFS`: Active Directory Federation Services를 사용하여 인증합니다.
+  `AzureAD`: Microsoft Azure Active Directory(AD) Service를 사용하여 인증합니다..
+  `BrowserAzureAD`: Microsoft Azure Active Directory(AD) Service용 브라우저 플러그인을 사용하여 인증합니다.
+  `BrowserIdcAuthPlugin `: AWS IAM Identity Center를 사용하는 인증 플러그인입니다.
+  `BrowserSAML`: Okta 또는 Ping과 같은 SAML 서비스용 브라우저 플러그인을 사용하여 인증합니다.
+  `IdpTokenAuthPlugin`: AWS IAM Identity Center 토큰 또는 AWS IAM Identity Center에 연결된 웹 ID 제공업체의 OpenID Connect(OIDC) JSON 기반 자격 증명 토큰(JWT)을 수락하는 권한 부여 플러그인입니다.
+  `JWT`: JSON 웹 토큰(JWT)을 사용하여 인증합니다.
+  `Ping`: PingFederate 서비스를 사용하여 인증합니다.
+  `Okta`: Okta 서비스를 사용하여 인증합니다.

이 파라미터는 선택 사항입니다.

## Port \$1 PortNumber
<a name="odbc20-port-option"></a>
+ **기본값** - 5439
+ **데이터 형식** – 정수

Amazon Redshift 서버가 클라이언트 연결을 수신 대기하는 데 사용하는 TCP 포트의 번호입니다.

이 파라미터는 선택 사항입니다.

## preferred\$1role
<a name="odbc20-preferred-role-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 연결하는 동안 수임하려는 역할입니다. IAM 인증에 사용됩니다.

이 파라미터는 선택 사항입니다.

## 프로필
<a name="odbc20-profile-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift에 연결하기 위한 인증에 사용되는 사용자 AWS 프로필의 이름입니다.
+  인스턴스 프로파일 사용(Use Instance Profile) 파라미터(**InstanceProfile** 속성)가 1 \$1 TRUE로 설정된 경우 해당 설정이 우선하며 드라이버가 Amazon EC2 인스턴스 프로파일을 대신 사용합니다.
+  프로필이 포함된 보안 인증 파일의 기본 위치는 `~/.aws/Credentials`입니다. `AWS_SHARED_CREDENTIALS_FILE` 환경 변수를 사용하여 다른 보안 인증 파일을 가리킬 수 있습니다.

이 파라미터는 선택 사항입니다.

## provider\$1name
<a name="odbc20-provider-name-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

사용자가 CREATE IDENTITY PROVIDER 쿼리를 사용하여 생성한 인증 공급자입니다. 네이티브 Amazon Redshift 인증에 사용됩니다.

이 파라미터는 선택 사항입니다.

## ProxyHost
<a name="odbc20-proxyhost-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

연결하는 데 사용할 프록시 서버의 호스트 이름 또는 IP 주소입니다.

이 파라미터는 선택 사항입니다.

## ProxyPort
<a name="odbc20-proxyport-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 정수

프록시 서버가 클라이언트 연결을 수신 대기하는 데 사용하는 포트 번호입니다.

이 파라미터는 선택 사항입니다.

## ProxyPwd
<a name="odbc20-proxypwd-option"></a>
+ **기본 ValPrevious ODBC 드라이버 버전** - 없음
+ **데이터 형식** – 문자열

프록시 서버에 액세스하는 데 사용하는 암호입니다.

이 파라미터는 선택 사항입니다.

## ProxyUid
<a name="odbc20-proxyuid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

프록시 서버에 액세스하는 데 사용하는 사용자 이름입니다.

이 파라미터는 선택 사항입니다.

## ReadOnly
<a name="odbc20-readonly-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 읽기 전용 모드인지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 연결이 읽기 전용 모드이며 데이터 스토어에 쓸 수 없습니다.
+  0 \$1 FALSE: 연결이 읽기 전용 모드가 아니며 데이터 스토어에 쓸 수 있습니다.

이 파라미터는 선택 사항입니다.

## region
<a name="odbc20-region-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

클러스터가 있는 AWS 리전입니다.

이 파라미터는 선택 사항입니다.

## SecretAccessKey
<a name="odbc20-secretaccesskey-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 사용자 또는 역할에 대한 IAM 비밀 키입니다. 이 파라미터를 설정할 경우 **AccessKeyID**도 설정해야 합니다 

이 파라미터는 선택 사항입니다.

## SessionToken
<a name="odbc20-sessiontoken-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

 인증에 사용하는 IAM 역할과 연결된 임시 IAM 세션 토큰입니다.

이 파라미터는 선택 사항입니다.

## Server \$1 HostName \$1 Host
<a name="odbc20-server-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

연결할 엔드포인트 서버입니다.

이 파라미터는 필수 사항입니다.

## ssl\$1insecure
<a name="odbc20-ssl-insecure-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 IdP 서버 인증서의 신뢰성을 확인하는지 여부를 지정하는 부울 값입니다.
+  1 \$1 TRUE: 드라이버가 IdP 서버 인증서의 신뢰성을 확인하지 않습니다.
+  0 \$1 FALSE: 드라이버가 IdP 서버 인증서의 신뢰성을 확인합니다.

이 파라미터는 선택 사항입니다.

## SSLMode
<a name="odbc20-sslmode-option"></a>
+ **기본값** – `verify-ca`
+ **데이터 형식** – 문자열

Amazon Redshift 연결 시 사용할 SSL 인증서 검증 모드입니다. 다음과 같은 값이 가능합니다.
+  `verify-full`: SSL, 신뢰할 수 있는 인증 기관 및 인증서와 일치하는 서버 이름을 사용해서만 연결합니다.
+  `verify-ca`: SSL 및 신뢰할 수 있는 인증 기관을 사용해서만 연결합니다.
+  `require`: SSL을 사용해서만 연결합니다.
+  `prefer`: 가능한 경우 SSL을 사용하여 연결합니다. 그렇지 않으면 SSL을 사용하지 않고 연결합니다.
+  `allow`: 기본적으로 SSL을 사용하지 않고 연결합니다. 서버에서 SSL 연결을 요구하는 경우 SSL을 사용합니다.
+  `disable`: SSL을 사용하지 않고 연결합니다.

이 파라미터는 선택 사항입니다.

## StsConnectionTimeout
<a name="odbc20-stsconnectiontimeout-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 정수

IAM 연결의 최대 대기 시간(초)입니다. 0으로 설정되거나 지정되지 않은 경우, 드라이버는 각 AWS STS 호출에 대해 60초 동안 대기합니다.

이 파라미터는 선택 사항입니다.

## StsEndpointUrl
<a name="odbc20-stsendpointurl-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

이 옵션은 AWS Security Token Service(AWS STS)와 통신하는 데 사용되는 재정의 엔드포인트를 지정합니다..

이 파라미터는 선택 사항입니다.

## 토큰
<a name="jdbc20-token-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

AWS IAM Identity Center에서 제공한 액세스 토큰 또는 AWS IAM Identity Center와 연결된 웹 ID 제공업체가 제공한 OpenID Connect(OIDC) JSON 웹 토큰(JWT)입니다. 애플리케이션은 AWS IAM Identity Center 또는 AWS IAM Identity Center와 연결된 자격 증명 공급자를 통해 애플리케이션 사용자를 인증하여 이 토큰을 생성해야 합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## token\$1type
<a name="jdbc20-token-type-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

`IdpTokenAuthPlugin`에서 사용되는 토큰 유형입니다.

다음 값을 지정할 수 있습니다.

**ACCESS\$1TOKEN**  
AWS IAM Identity Center에서 제공한 액세스 토큰을 사용하는 경우 이 값을 입력합니다.

**EXT\$1JWT**  
AWS IAM Identity Center와 통합된 웹 기반 ID 제공업체가 제공하는 OpenID Connect(OIDC) JSON 웹 토큰(JWT)을 사용하는 경우 이 값을 입력합니다.

이 파라미터는 `IdpTokenAuthPlugin`과 함께 작동합니다.

## UID \$1 User \$1 LogonID
<a name="odbc20-uid-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

Amazon Redshift 서버에 액세스하는 데 사용하는 사용자 이름입니다.

데이터베이스 인증을 사용하는 경우 이 파라미터가 필요합니다.

## UseUnicode
<a name="odbc20-useunicode-option"></a>
+ **기본값** - 0
+ **데이터 형식** – 부울

드라이버가 Redshift 데이터를 유니코드 또는 일반 SQL 유형으로 반환할지 여부를 지정하는 부울입니다.
+  1 \$1 TRUE: 드라이버가 문자 데이터 유형에 대해 와이드 SQL 유형을 반환합니다.
  + SQL\$1CHAR 대신 SQL\$1WCHAR가 반환됩니다.
  + SQL\$1VARCHAR 대신 SQL\$1WVARCHAR가 반환됩니다.
  + SQL\$1LONGVARCHAR 대신 SQL\$1WLONGVARCHAR가 반환됩니다.
+  0 \$1 FALSE: 드라이버가 문자 데이터 유형에 대해 일반 SQL 유형을 반환합니다.
  + SQL\$1WCHAR 대신 SQL\$1CHAR가 반환됩니다.
  + SQL\$1WVARCHAR 대신 SQL\$1VARCHAR가 반환됩니다.
  + SQL\$1WLONGVARCHAR 대신 SQL\$1LONGVARCHAR가 반환됩니다.

이 파라미터는 선택 사항입니다. 드라이버 버전 2.1.15 이상에서 사용할 수 있습니다.

## web\$1identity\$1token
<a name="odbc20-web-identity-token-option"></a>
+ **기본값** – 없음
+ **데이터 형식** – 문자열

자격 증명 공급자가 제공하는 OAUTH 토큰입니다. JWT 플러그인에서 사용됩니다.

**plugin\$1name** 파라미터를 BasicJwtCredentialsProvider로 설정한 경우 이 파라미터가 필요합니다.

# 이전 ODBC 드라이버 버전
<a name="odbc20-previous-versions"></a>

도구에 특정 버전의 드라이버가 필요한 경우에만 Amazon Redshift ODBC 드라이버 버전 2.x의 이전 버전을 다운로드합니다.

## Microsoft Windows용 이전 ODBC 드라이버 버전 사용
<a name="odbc20-previous-versions-windows"></a>

Microsoft Windows용 Amazon Redshift ODBC 드라이버 버전 2.x의 이전 버전은 다음과 같습니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC64-2.1.14.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC64-2.1.14.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC64-2.1.13.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC64-2.1.13.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC64-2.1.12.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC64-2.1.12.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC64-2.1.11.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC64-2.1.11.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC64-2.1.10.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC64-2.1.10.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC64-2.1.8.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC64-2.1.8.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC64-2.1.7.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC64-2.1.7.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC64-2.1.6.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC64-2.1.6.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC64-2.1.4.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC64-2.1.4.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC64-2.1.3.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC64-2.1.3.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC64-2.1.2.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC64-2.1.2.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC64-2.1.1.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC64-2.1.1.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC64-2.1.0.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC64-2.1.0.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC64-2.0.1.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC64-2.0.1.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC64-2.0.0.11.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC64-2.0.0.11.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC64-2.0.0.9.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC64-2.0.0.9.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC64-2.0.0.8.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC64-2.0.0.8.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC64-2.0.0.7.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC64-2.0.0.7.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC64-2.0.0.6.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC64-2.0.0.6.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC64-2.0.0.5.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC64-2.0.0.5.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC64-2.0.0.3.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC64-2.0.0.3.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC64-2.0.0.1.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC64-2.0.0.1.msi) 

## Linux용 이전 ODBC 드라이버 버전 사용
<a name="odbc20-previous-versions-linux"></a>

Linux용 Amazon Redshift ODBC 드라이버 버전 2.x의 이전 버전은 다음과 같습니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC-64-bit-2.1.10.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC-64-bit-2.1.10.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC-64-bit-2.1.9.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC-64-bit-2.1.9.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC-64-bit-2.1.8.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC-64-bit-2.1.8.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC-64-bit-2.1.7.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC-64-bit-2.1.7.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC-64-bit-2.1.6.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC-64-bit-2.1.6.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC-64-bit-2.1.4.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC-64-bit-2.1.4.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC-64-bit-2.1.3.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC-64-bit-2.1.3.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC-64-bit-2.1.2.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC-64-bit-2.1.2.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC-64-bit-2.1.1.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC-64-bit-2.1.1.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC-64-bit-2.1.0.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC-64-bit-2.1.0.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86_64.rpm) 

## Apple macOS용 이전 ODBC 드라이버 버전 사용
<a name="odbc20-previous-versions-mac"></a>

Apple macOS용 Amazon Redshift ODBC 드라이버 버전 2.x의 이전 버전은 다음과 같습니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit.2.1.14.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit.2.1.14.0.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit.2.1.13.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit.2.1.13.0.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit.2.1.12.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit.2.1.12.0.universal.pkg) 

# ODBC 드라이버 버전 1.x 연결 구성
<a name="configure-odbc-connection"></a>

ODBC 연결을 사용하여 여러 서드 파티 SQL 클라이언트 도구 및 애플리케이션에서 Amazon Redshift 클러스터에 연결할 수 있습니다. 이를 위해 클라이언트 컴퓨터 또는 Amazon EC2 인스턴스에서 연결을 설정해야 합니다. 클라이언트 도구가 JDBC를 지원하는 경우에는 JDBC의 구성 용이성 때문에 ODBC가 아닌 JDBC 연결 유형을 사용하는 것이 좋을 수도 있습니다. 하지만 클라이언트 도구가 JDBC를 지원하지 않으면 이번 섹션의 단계에 따라 ODBC 연결을 구성해야 합니다.

Amazon Redshift는 Linux, Windows 및 macOS X 운영 체제용 64비트 ODBC 드라이버를 제공합니다. 32비트 ODBC 드라이버는 공급이 중단되었습니다. 긴급 보안 패치를 제외하고 추가 업데이트는 릴리스되지 않습니다.

ODBC 드라이버 기능과 사전 조건에 대한 최신 정보는 [Amazon Redshift ODBC 드라이버 릴리스 정보](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Release+Notes.pdf)를 참조하세요. 

Amazon Redshift ODBC 드라이버의 설치 및 구성 정보는 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)를 참조하세요. 

**Topics**
+ [

# ODBC URL 가져오기
](obtain-odbc-url.md)
+ [

# Microsoft Windows에서 Amazon Redshift ODBC 드라이버 사용
](install-odbc-driver-windows.md)
+ [

# Linux에서 Amazon Redshift ODBC 드라이버 사용
](install-odbc-driver-linux.md)
+ [

# macOS X에서 Amazon Redshift ODBC 드라이버 사용
](install-odbc-driver-mac.md)
+ [

# ODBC 드라이버 옵션
](configure-odbc-options.md)
+ [

# 이전 ODBC 드라이버 버전
](odbc-previous-versions.md)

# ODBC URL 가져오기
<a name="obtain-odbc-url"></a>

Amazon Redshift는 Amazon Redshift 콘솔에 클러스터의 ODBC URL을 표시합니다. 이 URL에는 클라이언트 컴퓨터와 데이터베이스 간의 연결을 설정하는 정보가 포함되어 있습니다.

 ODBC URL의 형식은 다음과 같습니다. `Driver={driver};Server=endpoint;Database=database_name;UID=user_name;PWD=password;Port=port_number` 

위에 나와 있는 형식의 필드는 다음과 같은 값을 가집니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/redshift/latest/mgmt/obtain-odbc-url.html)

 앞에 있는 테이블의 필드에는 다음과 같은 특수 문자가 포함될 수 있습니다.

```
[]{}(),;?*=!@ 
```

 이러한 특수 문자를 사용하는 경우 값을 중괄호로 묶어야 합니다. 예를 들어, 연결 문자열의 암호 값 `Your;password123`은 `PWD={Your;password123};`으로 표시됩니다.

 `Field=value` 쌍은 세미콜론으로 구분되므로 `}` 및 `;` 조합은 그 사이의 공백 개수에 상관없이 `Field={value};` 쌍의 끝으로 간주됩니다. 필드 값에서 `};` 시퀀스를 사용하지 않는 것이 좋습니다. 예를 들어 암호 값을 `PWD={This is a passwor} ;d};`로 설정하면 암호는 `This is a passwor} ;`이 되고 URL에 오류가 발생합니다.

다음은 ODBC URL의 예입니다.

```
Driver={Amazon Redshift (x64)};
                    Server=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com;
                    Database=dev; 
                    UID=adminuser;
                    PWD=insert_your_admin_user_password_here;
                    Port=5439
```

ODBC 연결을 만드는 방법에 대한 자세한 내용은 [클러스터 연결 문자열 찾기](connecting-connection-string.md) 섹션을 참조하세요.

# Microsoft Windows에서 Amazon Redshift ODBC 드라이버 사용
<a name="install-odbc-driver-windows"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 Amazon Redshift ODBC 드라이버를 설치합니다. 드라이버를 설치하는 컴퓨터마다 최소 시스템 요구 사항을 충족해야 합니다. 최소 시스템 요구 사항에 대한 자세한 내용은 [Amazon Redshift ODBC 커넥터 설치 및 구성 안내서](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)를 참조하세요. 

**Topics**
+ [

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
](odbc-driver-windows-how-to-install.md)
+ [

# ODBC 연결을 위한 시스템 DSN 항목 생성
](create-dsn-odbc-windows.md)

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc-driver-windows-how-to-install"></a>

Windows 운영 체제용 Amazon Redshift ODBC 드라이버를 다운로드하려면 다음 절차를 따르세요. Amazon Redshift와 함께 사용하도록 인증되었고 특정 드라이버가 필요한 서드 파티 애플리케이션을 실행하고 있다면 이것과 다른 드라이버만 사용합니다.

**ODBC 드라이버를 설치하려면**

1. SQL 클라이언트 도구 또는 애플리케이션의 시스템 아키텍처에 따라 다음 중 하나를 다운로드합니다.
   + [64비트 ODBC 드라이버 버전 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC64-1.6.3.1008.msi) 

     이 드라이버의 이름은 Amazon Redshift(x64)입니다.
   + [32비트 ODBC 드라이버 버전 1.4.52](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC32-1.4.52.1000.msi) 

     이 드라이버의 이름은 Amazon Redshift(x86)입니다. 32비트 ODBC 드라이버는 공급이 중단되었습니다. 긴급 보안 패치를 제외하고 추가 업데이트는 릴리스되지 않습니다.
**참고**  
SQL 클라이언트 도구 또는 애플리케이션의 시스템 아키텍처와 일치하는 MSI 패키지를 다운로드하세요. 예를 들어 SQL 클라이언트 도구가 64비트라면 드라이버도 64비트를 설치해야 합니다.

    그런 다음 [Amazon Redshift ODBC 및 JDBC 드라이버 사용권 계약](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf)을 다운로드하여 검토합니다. 

1.  .msi 파일을 두 번 클릭한 후 마법사의 단계에 따라 드라이버를 설치합니다.

# ODBC 연결을 위한 시스템 DSN 항목 생성
<a name="create-dsn-odbc-windows"></a>

ODBC 드라이버를 다운로드하여 설치한 후에는 데이터 원본 이름(DSN) 항목을 클라이언트 컴퓨터 또는 Amazon EC2 인스턴스에 추가합니다. SQL 클라이언트 도구는 이 데이터 원본을 사용하여 Amazon Redshift 데이터베이스에 연결합니다.

사용자 DSN 대신 시스템 DSN을 생성하는 것이 좋습니다. 일부 애플리케이션은 다른 사용자 계정을 사용하여 데이터를 로드합니다. 이러한 애플리케이션은 다른 사용자 계정으로 생성된 사용자 DSN을 감지하지 못할 수 있습니다.

**참고**  
AWS Identity and Access Management(IAM) 자격 증명 또는 자격 증명 공급자(IdP) 자격 증명을 사용한 인증의 경우 추가 단계가 필요합니다. 자세한 내용은 [5단계: IAM 자격 증명을 사용하도록 JDBC 또는 ODBC 연결 구성](generating-iam-credentials-steps.md#generating-iam-credentials-configure-jdbc-odbc) 섹션을 참조하세요.

시스템 DSN 항목을 생성하는 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)를 참조하세요. 

**Windows에서 ODBC 연결을 위한 시스템 DSN 항목을 생성하려면**

1. **시작** 메뉴에서 **ODBC 데이터 원본**을 엽니다.

   Amazon Redshift에 연결하는 데 사용하는 클라이언트 애플리케이션과 동일한 비트를 가진 ODBC 데이터 원본 관리자를 선택해야 합니다.

1. **ODBC 데이터 원본 관리자(ODBC Data Source Administrator)**에서 **드라이버(Driver)** 탭을 선택하고 드라이버 폴더를 찾습니다.
   + **Amazon Redshift ODBC 드라이버(64비트)**
   + **Amazon Redshift ODBC 드라이버(32비트)**

1.  해당 컴퓨터의 모든 사용자가 이용할 수 있도록 드라이버를 구성하려면 **시스템 DSN(System DSN)** 탭을 선택하고, 본인의 사용자 계정에서만 이용할 수 있도록 드라이버를 구성하려면 **사용자 DSN(User DSN)** 탭을 선택합니다.

1.  **추가**를 선택합니다. **새 데이터 원본 생성(Create New Data Source)** 창이 열립니다.

1.  **Amazon Redshift** ODBC 드라이버를 선택하고 **완료(Finish)**를 선택합니다. **Amazon Redshift ODBC 드라이버 DSN 설정(Amazon Redshift ODBC Driver DSN Setup)** 창이 열립니다.

1. **연결 설정(Connection Settings)**에서 다음 정보를 입력하세요.
<a name="rs-mgmt-dsn"></a>
**데이터 소스 이름**  
데이터 소스 이름을 입력합니다. 나중에 클러스터 연결을 생성할 때 데이터 원본을 식별할 이름이라면 무엇이든 사용할 수 있습니다. 예를 들어 *Amazon Redshift 시작 안내서*에 따른 경우 `exampleclusterdsn`을 입력하면 이 DSN과 연결할 클러스터를 기억하기 쉽습니다.
<a name="rs-mgmt-server"></a>
**Server**  
Amazon Redshift 클러스터의 엔드포인트를 지정합니다. 이 정보는 Amazon Redshift 콘솔의 클러스터 세부 정보 페이지에서 찾을 수 있습니다. 자세한 내용은 [Amazon Redshift에서 연결 구성](configuring-connections.md) 섹션을 참조하세요.
<a name="rs-mgmt-port"></a>
**Port**  
데이터베이스가 사용하는 포트 번호를 입력합니다. 클러스터를 시작할 때 사용하도록 구성된 포트를 사용해야 합니다.
<a name="rs-mgmt-database"></a>
**데이터베이스**  
Amazon Redshift 데이터베이스의 이름을 입력합니다. 데이터베이스 이름을 지정하지 않고 클러스터를 시작한 경우 `dev`를 입력합니다. 그렇지 않으면 시작 프로세스 중에 선택한 이름을 사용합니다. *Amazon Redshift 시작 안내서*에 따른 경우 `dev`를 입력합니다.

1. **인증(Authentication)**에서 표준 또는 IAM 인증을 구성하는 구성 옵션을 지정합니다. 인증 옵션에 대한 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Configuring Authentication on Windows"를 참조하세요.

1. **SSL 설정(SSL Settings)**에서 다음 값을 지정합니다.
<a name="rs-mgmt-ssl-authentication"></a>
**SSL 인증**  
SSL(Secure Sockets Layer)의 처리 모드를 선택합니다. 테스트 환경에서는 `prefer`를 사용할 수 있습니다. 그러나 프로덕션 환경 및 안전한 데이터 교환이 필요한 경우 `verify-ca` 또는 `verify-full`을 사용합니다. Windows에서 SSL을 사용하는 방법에 대한 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Configuring SSL Verification on Windows" 섹션을 참조하세요.

1. **추가 옵션(Additional Options)**에서 쿼리 결과를 SQL 클라이언트 도구 또는 애플리케이션에 반환하는 방법에 대한 옵션을 지정합니다. 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Configuring Additional Options on Windows" 섹션을 참조하세요.

1. **로깅 옵션(Logging Options)**에서 로깅 옵션에 대한 값을 지정합니다. 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Configuring Logging Options on Windows" 섹션을 참조하세요.

   그 다음에 **확인(OK)**를 선택합니다.

1. **데이터 형식 옵션(Data Type Options)**에서 데이터 형식에 대한 값을 지정합니다. 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Configuring Data Type Options on Windows" 섹션을 참조하세요.

   그 다음에 **확인(OK)**를 선택합니다.

1. **테스트**를 선택합니다. 클라이언트 컴퓨터가 Amazon Redshift 데이터베이스에 연결할 수 있으면 **연결 성공(Connection successful)** 메시지가 표시됩니다.

    클라이언트 컴퓨터가 데이터베이스에 연결하지 못하는 경우에는 가능한 문제를 해결할 수 있습니다. 자세한 내용은 [Amazon Redshift 연결 문제 해결](troubleshooting-connections.md) 섹션을 참조하세요.

1. Windows에서 TCP keepalive를 구성하여 연결 시간 초과가 발생하지 않도록 합니다. Windows에서 TCP KeepAlive를 구성하는 방법에 대한 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*를 참조하세요.

1. 문제 해결에 도움이 되도록 로깅을 구성합니다. Windows에서 로깅을 구성하는 방법에 대한 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*를 참조하세요.

# Linux에서 Amazon Redshift ODBC 드라이버 사용
<a name="install-odbc-driver-linux"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 Amazon Redshift ODBC 드라이버를 설치합니다. 드라이버를 설치하는 컴퓨터마다 최소 시스템 요구 사항을 충족해야 합니다. 최소 시스템 요구 사항에 대한 자세한 내용은 [Amazon Redshift ODBC 커넥터 설치 및 구성 안내서](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)를 참조하세요. 

**Topics**
+ [

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
](odbc-driver-linux-how-to-install.md)
+ [

# ODBC 드라이버 관리자를 사용하여 드라이버 구성
](odbc-driver-configure-linux.md)

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc-driver-linux-how-to-install"></a>

이번 섹션에서 설명하는 단계에 따라 지원되는 Linux 배포에서 Amazon Redshift ODBC 드라이버를 다운로드하고 설치합니다. 설치 프로세스는 드라이버 파일을 다음 디렉터리에 설치합니다.
+ `/opt/amazon/redshiftodbc/lib/64`(64비트 드라이버의 경우)
+ `/opt/amazon/redshiftodbc/ErrorMessages`
+ `/opt/amazon/redshiftodbc/Setup`
+  `/opt/amazon/redshiftodbc/lib/32`(32비트 드라이버의 경우)<a name="rs-mgmt-install-odbc-drivers-linux"></a>

**Amazon Redshift ODBC 드라이버를 설치하려면**

1. SQL 클라이언트 도구 또는 애플리케이션의 시스템 아키텍처에 따라 다음 중 하나를 다운로드합니다.
   + [64비트 RPM 드라이버 버전 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.rpm) 
   + [64비트 Debian 드라이버 버전 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.deb) 
   + [32비트 RPM 드라이버 버전 1.4.52](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-32-bit-1.4.52.1000-1.i686.rpm) 

   이러한 드라이버의 이름은 각각 Amazon Redshift ODBC 드라이버입니다. 32비트 ODBC 드라이버는 공급이 중단되었습니다. 긴급 보안 패치를 제외하고 추가 업데이트는 릴리스되지 않습니다.
**참고**  
SQL 클라이언트 도구 또는 애플리케이션의 시스템 아키텍처와 일치하는 패키지를 다운로드하세요. 예를 들어 클라이언트 도구가 64비트라면 드라이버도 64비트를 설치해야 합니다.

    그런 다음 [Amazon Redshift ODBC 및 JDBC 드라이버 사용권 계약](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf)을 다운로드하여 검토합니다. 

1. 패키지를 다운로드한 위치로 이동한 다음, 다음 명령 중 하나를 실행합니다. Linux 배포판에 따라 올바른 명령을 사용하세요.
   + RHEL 및 CentOS 운영 체제에서 다음 명령을 실행합니다.

     ```
     yum -nogpgcheck localinstall RPMFileName
     ```

     *`RPMFileName`*을 RPM 패키지 파일 이름으로 바꿉니다. 예를 들어, 다음은 64비트 드라이버를 설치하는 명령입니다.

     ```
     yum -nogpgcheck localinstall AmazonRedshiftODBC-64-bit-1.x.xx.xxxx-x.x86_64.rpm
     ```
   + SLES에서 다음 명령을 실행합니다.

     ```
     zypper install RPMFileName
     ```

     *`RPMFileName`*을 RPM 패키지 파일 이름으로 바꿉니다. 예를 들어, 다음은 64비트 드라이버를 설치하는 명령입니다.

     ```
     zypper install AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.rpm
     ```
   + Debian에서 다음 명령을 실행합니다.

     ```
     sudo apt install ./DEBFileName.deb
     ```

     `DEBFileName.deb`를 Debian 패키지 파일 이름으로 바꿉니다. 예를 들어, 다음은 64비트 드라이버를 설치하는 명령입니다.

     ```
     sudo apt install ./AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.deb
     ```

**중요**  
드라이버 설치를 마친 후에는 시스템에서 사용할 수 있도록 구성해야 합니다. 드라이버 구성에 대한 자세한 내용은 [ODBC 드라이버 관리자를 사용하여 드라이버 구성ODBC 드라이버 관리자를 사용하여 드라이버 구성](odbc-driver-configure-linux.md) 섹션을 참조하세요.

# ODBC 드라이버 관리자를 사용하여 드라이버 구성
<a name="odbc-driver-configure-linux"></a>

Linux 운영 체제에서 ODBC 드라이버 관리자를 사용하여 ODBC 연결 설정을 구성합니다. ODBC 드라이버 관리자는 구성 파일을 사용하여 ODBC 데이터 원본과 드라이버를 정의 및 구성합니다. 또한 사용하는 운영 체제에 따라 ODBC 드라이버 관리자도 달라집니다. Linux의 경우 unixODBC 드라이버 관리자입니다.

Amazon Redshift ODBC 드라이버 구성에 대해 지원되는 ODBC 드라이버 관리자에 관한 자세한 내용은 Linux 운영 체제의 경우 [Linux에서 Amazon Redshift ODBC 드라이버 사용Linux에서 ODBC 드라이버 사용](install-odbc-driver-linux.md) 섹션을 참조하시기 바랍니다. 또한 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Specifying ODBC Driver Managers on Non- Windows Machines"(Windows 이외의 컴퓨터에서 ODBC 드라이버 관리자 지정)를 참조하세요. 링크를 사용합니다.

Amazon Redshift ODBC 드라이버 구성에 필요한 파일은 `amazon.redshiftodbc.ini`, `odbc.ini` 및 `odbcinst.ini`입니다.

드라이버를 기본 위치에 설치한 경우에는 `amazon.redshiftodbc.ini` 구성 파일이 다음 디렉터리 중 한 곳에 만들어집니다.
+ `/opt/amazon/redshiftodbc/lib/64`(Linux 운영 체제의 64비트 드라이버의 경우)
+ `/opt/amazon/redshiftodbc/lib/32`(Linux 운영 체제의 32비트 드라이버의 경우)

또한 Linux의 `/opt/amazon/redshiftodbc/Setup`에는 `odbc.ini` 샘플과 `odbcinst.ini` 파일이 있습니다. 이러한 파일을 Amazon Redshift ODBC 드라이버 및 데이터 원본 이름(DSN)을 구성하는 예제로 사용할 수 있습니다.

Amazon Redshift ODBC 드라이버 설치 디렉터리를 구성 파일용으로 사용하는 것은 바람직하지 않습니다. `Setup` 디렉터리의 샘플 파일은 오직 예를 제공하기 위한 용도일 뿐입니다. 나중에 Amazon Redshift ODBC 드라이버를 다시 설치하거나 새 버전으로 업그레이드하면 설치 디렉터리를 덮어씁니다. 그러면 이러한 파일에 대한 변경 사항이 손실됩니다.

이를 방지하려면 `amazon.redshiftodbc.ini` 파일을 설치 디렉터리가 아닌 다른 디렉터리에 복사합니다. 이 파일을 사용자의 홈 디렉터리로 복사하는 경우에는 파일 이름 앞에 마침표(.)를 추가하여 숨김 파일로 지정하세요.

`odbc.ini` 및 `odbcinst.ini` 파일의 경우 사용자의 홈 디렉터리에 있는 구성 파일을 사용하거나 다른 디렉터리에 새 버전을 생성합니다. 기본적으로 Linux 운영 체제는 사용자의 홈 디렉터리(`/home/$USER` 또는 `~/`)에 `odbc.ini` 파일과 `odbcinst.ini` 파일이 있어야 합니다. 이러한 기본 파일은 숨김 파일이기 때문에 파일 이름 앞에 마침표(.)가 있습니다. 이러한 파일은 `-a` 플래그를 사용하여 디렉터리 내용을 나열하는 경우에만 표시됩니다.

`odbc.ini` 및 `odbcinst.ini` 파일에 대해 어떤 옵션을 선택하든지 파일을 수정하여 드라이버 및 DSN 구성 정보를 추가합니다. 새로운 파일을 생성할 때도 마찬가지로 환경 변수를 설정하여 구성 파일의 위치를 지정해야 합니다.

기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 버전의 `odbc.ini` 및 `odbcinst.ini` 구성 파일(.`odbc.ini` 및 .`odbcinst.ini`)을 사용하도록 구성됩니다. 또한 드라이버 설치 디렉터리의 `amazon.redshiftodbc.ini` 하위 폴더에 있는 `/lib` 파일을 사용하도록 구성됩니다. 이러한 구성 파일을 다른 위치에 저장하는 경우 드라이버 관리자가 파일을 찾을 수 있도록 다음에 설명된 환경 변수를 설정합니다. 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Specifying the Locations of the Driver Configuration Files"(드라이버 구성 파일 위치 지정)를 참조하세요. 링크를 사용합니다.

## Linux 운영 체제에서 데이터 소스 이름 작성
<a name="configure-odbc-ini-file"></a>

 DSN(데이터 원본 이름)을 사용하여 데이터 저장소에 연결할 경우 DSN을 정의하도록 `odbc.ini` 파일을 구성합니다. `odbc.ini` 파일의 속성을 설정하여 데이터 저장소에 대한 연결 정보를 지정하는 DSN을 생성합니다.

`odbc.ini` 파일 구성 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)의 "Creating a Data Source Name on a Non-Windows Machine"(Windows 이외의 컴퓨터에서 데이터 소스 이름 생성)을 참조하세요. 

 Linux 운영 체제에서 사용하는 형식은 다음과 같습니다.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file

Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

다음 예에서는 Linux 운영 체제에서 64비트 ODBC 드라이버를 사용하는 odbc.ini에 대한 구성을 보여줍니다.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift (x64)

[Amazon Redshift (x64)]
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

다음 예에서는 Linux 운영 체제에서 32비트 ODBC 드라이버를 사용하는 odbc.ini에 대한 구성을 보여줍니다.

```
[ODBC Data Sources]
Amazon_Redshift_x32=Amazon Redshift (x86)

[Amazon Redshift (x86)]
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

## Linux 운영 체제에서 DSN 없이 연결 구성
<a name="configure-odbcinst-ini-file"></a>

DSN이 없는 연결을 통해 데이터 저장소에 연결하려면 `odbcinst.ini` 파일에 드라이버를 정의합니다. 그런 다음 애플리케이션에 DSN이 없는 연결 문자열을 제공합니다.

이 경우 `odbcinst.ini` 파일을 구성하는 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Configuring a DSN-less Connection on a Non-Windows Machine"(Windows 이외의 컴퓨터에서 DSN이 없는 연결 구성)을 참조하세요. 링크를 사용합니다.

Linux 운영 체제에서 사용하는 형식은 다음과 같습니다.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

다음 예에서는 64비트 드라이버가 Linux 운영 체제의 기본 디렉터리에 설치되어 있는 경우의 `odbcinst.ini` 구성을 보여줍니다.

```
[ODBC Drivers]
Amazon Redshift (x64)=Installed

[Amazon Redshift (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
```

다음 예에서는 32비트 드라이버가 Linux 운영 체제의 기본 디렉터리에 설치되어 있는 경우의 `odbcinst.ini` 구성을 보여줍니다.

```
[ODBC Drivers]
Amazon Redshift (x86)=Installed

[Amazon Redshift (x86)]
Description=Amazon Redshift ODBC Driver (32-bit)
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
```

## 환경 변수 구성
<a name="rs-mgmt-config-global-env-variables"></a>

올바른 ODBC 드라이버 관리자를 사용하여 올바른 드라이버를 로드합니다. 이를 위해 라이브러리 경로 환경 변수를 설정합니다. 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)의 "Specifying ODBC Driver Managers on Non-Windows Machines"(Windows 이외의 컴퓨터에서 ODBC 드라이버 관리자 지정)를 참조하세요. 링크를 사용합니다.

기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 버전의 `odbc.ini` 및 `odbcinst.ini` 구성 파일(.`odbc.ini` 및 .`odbcinst.ini`)을 사용하도록 구성됩니다. 또한 드라이버 설치 디렉터리의 `amazon.redshiftodbc.ini` 하위 폴더에 있는 `/lib` 파일을 사용하도록 구성됩니다. 이러한 구성 파일을 다른 위치에 저장하는 경우 드라이버 관리자가 파일을 찾을 수 있도록 환경 변수를 지정합니다. 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Specifying the Locations of the Driver Configuration Files" 섹션을 참조하세요.

## 연결 기능 구성
<a name="connection-config-features"></a>

ODBC 설정에 대해 다음 연결 기능을 구성할 수 있습니다.
+ 자격 증명을 제공하고 Amazon Redshift 데이터베이스 연결을 인증하도록 ODBC 드라이버를 구성합니다.
+ 보안 소켓 계층(SSL)이 사용 설정된 Amazon Redshift 서버에 연결하는 경우 SSL에서 사용할 수 있는 소켓에 연결하도록 ODBC 드라이버를 구성합니다.
+ 프록시 서버를 통해 Amazon Redshift에 연결하도록 ODBC 드라이버를 구성합니다.
+ 쿼리가 너무 많은 메모리를 소비하지 않게 쿼리 처리 모드를 사용하도록 ODBC 드라이버를 구성합니다.
+ 프록시 서버를 통해 IAM 인증 프로세스를 통과하도록 ODBC 드라이버를 구성합니다.
+ TCP keepalive를 사용하여 연결 시간 초과가 발생하지 않도록 ODBC 드라이버를 구성합니다.

이러한 연결 기능에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)를 참조하세요. 

# macOS X에서 Amazon Redshift ODBC 드라이버 사용
<a name="install-odbc-driver-mac"></a>

Amazon Redshift 데이터 웨어하우스에 액세스하는 클라이언트 컴퓨터에 드라이버를 설치합니다. 드라이버를 설치하는 컴퓨터마다 최소 시스템 요구 사항을 충족해야 합니다. 최소 시스템 요구 사항에 대한 자세한 내용은 [Amazon Redshift ODBC 커넥터 설치 및 구성 안내서](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)를 참조하세요. 

**Topics**
+ [

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
](odbc-driver-mac-how-to-install.md)
+ [

# ODBC 드라이버 관리자를 사용하여 드라이버 구성
](odbc-driver-configure-mac.md)

# Amazon Redshift ODBC 드라이버 다운로드 및 설치
<a name="odbc-driver-mac-how-to-install"></a>

이 섹션의 단계에 따라 지원되는 macOS X 버전에 Amazon Redshift ODBC 드라이버를 다운로드하고 설치합니다. 설치 프로세스는 드라이버 파일을 다음 디렉터리에 설치합니다.
+ `/opt/amazon/redshift/lib/universal`
+ `/opt/amazon/redshift/ErrorMessages`
+ `/opt/amazon/redshift/Setup`<a name="rs-mgmt-install-odbc-drivers-mac"></a>

**macOS X에 Amazon Redshift ODBC 드라이버를 설치하려면**

1. macOS X에 Amazon Redshift ODBC 드라이버를 설치하려면 [macOS 드라이버 버전 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit.1.6.3.1008.universal.pkg)을 다운로드합니다. 

   그런 다음 [Amazon Redshift ODBC 및 JDBC 드라이버 사용권 계약](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf)을 다운로드하여 검토합니다. 

1. **AmazonRedshiftODBC.pkg**를 두 번 클릭하여 설치 프로그램을 실행합니다.

1. 설치 프로그램의 단계에 따라 드라이버 설치 프로세스를 마칩니다. 설치를 수행하려면 라이선스 계약 조건에 동의해야 합니다.

**중요**  
드라이버 설치를 마친 후에는 시스템에서 사용할 수 있도록 구성해야 합니다. 드라이버 구성에 대한 자세한 내용은 [ODBC 드라이버 관리자를 사용하여 드라이버 구성ODBC 드라이버 관리자를 사용하여 드라이버 구성](odbc-driver-configure-mac.md) 섹션을 참조하세요.

# ODBC 드라이버 관리자를 사용하여 드라이버 구성
<a name="odbc-driver-configure-mac"></a>

macOS X 운영 체제에서 ODBC 드라이버 관리자를 사용하여 ODBC 연결 설정을 구성합니다. ODBC 드라이버 관리자는 구성 파일을 사용하여 ODBC 데이터 원본과 드라이버를 정의 및 구성합니다. 또한 사용하는 운영 체제에 따라 ODBC 드라이버 관리자도 달라집니다. macOS X 운영 체제의 경우에는 iODBC 드라이버 관리자입니다.

Amazon Redshift ODBC 드라이버 구성에 대해 지원되는 ODBC 드라이버 관리자에 관한 자세한 내용은 macOS X 운영 체제의 경우 [macOS X에서 Amazon Redshift ODBC 드라이버 사용macOS X에서 ODBC 드라이버 사용](install-odbc-driver-mac.md) 섹션을 참조하시기 바랍니다. 또한 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Specifying ODBC Driver Managers on Non- Windows Machines"(Windows 이외의 컴퓨터에서 ODBC 드라이버 관리자 지정)를 참조하세요. 링크를 사용합니다.

Amazon Redshift ODBC 드라이버 구성에 필요한 파일은 `amazon.redshiftodbc.ini`, `odbc.ini` 및 `odbcinst.ini`입니다.

기본 위치에 드라이버를 설치한 경우에는 `amazon.redshiftodbc.ini` 구성 파일이 `/opt/amazon/redshift/lib`에 있습니다.

또한 macOS X의 `/opt/amazon/redshift/Setup`에는 `odbc.ini` 샘플과 `odbcinst.ini` 파일이 있습니다. 이러한 파일을 Amazon Redshift ODBC 드라이버 및 데이터 원본 이름(DSN)을 구성하는 예제로 사용할 수 있습니다.

Amazon Redshift ODBC 드라이버 설치 디렉터리를 구성 파일용으로 사용하는 것은 바람직하지 않습니다. `Setup` 디렉터리의 샘플 파일은 오직 예를 제공하기 위한 용도일 뿐입니다. 나중에 Amazon Redshift ODBC 드라이버를 다시 설치하거나 새 버전으로 업그레이드하면 설치 디렉터리를 덮어씁니다. 그러면 이러한 파일에 대한 변경 사항이 손실됩니다.

이를 방지하려면 `amazon.redshiftodbc.ini` 파일을 설치 디렉터리가 아닌 다른 디렉터리에 복사합니다. 이 파일을 사용자의 홈 디렉터리로 복사하는 경우에는 파일 이름 앞에 마침표(.)를 추가하여 숨김 파일로 지정하세요.

`odbc.ini` 및 `odbcinst.ini` 파일의 경우 사용자의 홈 디렉터리에 있는 구성 파일을 사용하거나 다른 디렉터리에 새 버전을 생성합니다. 기본적으로 macOS X 운영 체제는 사용자의 홈 디렉터리(`/home/$USER` 또는 `~/`)에 `odbc.ini` 파일과 `odbcinst.ini` 파일이 있어야 합니다. 이러한 기본 파일은 숨김 파일이기 때문에 파일 이름 앞에 마침표(.)가 있습니다. 이러한 파일은 `-a` 플래그를 사용하여 디렉터리 내용을 나열하는 경우에만 표시됩니다.

`odbc.ini` 및 `odbcinst.ini` 파일에 대해 어떤 옵션을 선택하든지 파일을 수정하여 드라이버 및 DSN 구성 정보를 추가합니다. 새로운 파일을 생성할 때도 마찬가지로 환경 변수를 설정하여 구성 파일의 위치를 지정해야 합니다.

기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 버전의 `odbc.ini` 및 `odbcinst.ini` 구성 파일(.`odbc.ini` 및 .`odbcinst.ini`)을 사용하도록 구성됩니다. 또한 드라이버 설치 디렉터리의 `amazon.redshiftodbc.ini` 하위 폴더에 있는 `/lib` 파일을 사용하도록 구성됩니다. 이러한 구성 파일을 다른 위치에 저장하는 경우 드라이버 관리자가 파일을 찾을 수 있도록 다음에 설명된 환경 변수를 설정합니다. 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Specifying the Locations of the Driver Configuration Files"(드라이버 구성 파일 위치 지정)를 참조하세요. 링크를 사용합니다.

## macOS X 운영 체제에서 데이터 소스 이름 작성
<a name="configure-odbc-ini-file"></a>

 DSN(데이터 원본 이름)을 사용하여 데이터 저장소에 연결할 경우 DSN을 정의하도록 `odbc.ini` 파일을 구성합니다. `odbc.ini` 파일의 속성을 설정하여 데이터 저장소에 대한 연결 정보를 지정하는 DSN을 생성합니다.

`odbc.ini` 파일 구성 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)의 "Creating a Data Source Name on a Non-Windows Machine"(Windows 이외의 컴퓨터에서 데이터 소스 이름 생성)을 참조하세요. 

macOS X 운영 체제에서 사용하는 형식은 다음과 같습니다.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/lib/amazonredshiftodbc.dylib

Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

 다음 예에서는 macOS X 운영 체제에서 `odbc.ini` 구성을 보여줍니다.

```
[ODBC Data Sources]
Amazon_Redshift_dylib=Amazon Redshift DSN for macOS X

[Amazon Redshift DSN for macOS X]
Driver=/opt/amazon/redshift/lib/amazonredshiftodbc.dylib
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

## macOS X 운영 체제에서 DSN 없이 연결 구성
<a name="configure-odbcinst-ini-file"></a>

DSN이 없는 연결을 통해 데이터 저장소에 연결하려면 `odbcinst.ini` 파일에 드라이버를 정의합니다. 그런 다음 애플리케이션에 DSN이 없는 연결 문자열을 제공합니다.

이 경우 `odbcinst.ini` 파일을 구성하는 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)에서 "Configuring a DSN-less Connection on a Non-Windows Machine"(Windows 이외의 컴퓨터에서 DSN이 없는 연결 구성)을 참조하세요. 링크를 사용합니다.

macOS X 운영 체제에서 사용하는 형식은 다음과 같습니다.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/lib/amazonredshiftodbc.dylib
    
...
```

다음 예에서는 드라이버가 macOS X 운영 체제의 기본 디렉터리에 설치되어 있는 경우 `odbcinst.ini` 구성을 보여줍니다.

```
[ODBC Drivers]
Amazon RedshiftODBC DSN=Installed

[Amazon RedshiftODBC DSN]
Description=Amazon Redshift ODBC Driver for macOS X
Driver=/opt/amazon/redshift/lib/amazonredshiftodbc.dylib
```

## 환경 변수 구성
<a name="rs-mgmt-config-global-env-variables"></a>

올바른 ODBC 드라이버 관리자를 사용하여 올바른 드라이버를 로드합니다. 이를 위해 라이브러리 경로 환경 변수를 설정합니다. 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)의 "Specifying ODBC Driver Managers on Non-Windows Machines"(Windows 이외의 컴퓨터에서 ODBC 드라이버 관리자 지정)를 참조하세요. 링크를 사용합니다.

기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 버전의 `odbc.ini` 및 `odbcinst.ini` 구성 파일(.`odbc.ini` 및 .`odbcinst.ini`)을 사용하도록 구성됩니다. 또한 드라이버 설치 디렉터리의 `amazon.redshiftodbc.ini` 하위 폴더에 있는 `/lib` 파일을 사용하도록 구성됩니다. 이러한 구성 파일을 다른 위치에 저장하는 경우 드라이버 관리자가 파일을 찾을 수 있도록 환경 변수를 지정합니다. 자세한 내용은 *Amazon Redshift ODBC Connector Installation and Configuration Guide*의 "Specifying the Locations of the Driver Configuration Files" 섹션을 참조하세요.

## 연결 기능 구성
<a name="connection-config-features"></a>

ODBC 설정에 대해 다음 연결 기능을 구성할 수 있습니다.
+ 자격 증명을 제공하고 Amazon Redshift 데이터베이스 연결을 인증하도록 ODBC 드라이버를 구성합니다.
+ 보안 소켓 계층(SSL)이 사용 설정된 Amazon Redshift 서버에 연결하는 경우 SSL에서 사용할 수 있는 소켓에 연결하도록 ODBC 드라이버를 구성합니다.
+ 프록시 서버를 통해 Amazon Redshift에 연결하도록 ODBC 드라이버를 구성합니다.
+ 쿼리가 너무 많은 메모리를 소비하지 않게 쿼리 처리 모드를 사용하도록 ODBC 드라이버를 구성합니다.
+ 프록시 서버를 통해 IAM 인증 프로세스를 통과하도록 ODBC 드라이버를 구성합니다.
+ TCP keepalive를 사용하여 연결 시간 초과가 발생하지 않도록 ODBC 드라이버를 구성합니다.

이러한 연결 기능에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)를 참조하세요. 

# ODBC 드라이버 옵션
<a name="configure-odbc-options"></a>

구성 옵션을 사용하여 Amazon Redshift ODBC 드라이버의 동작을 제어할 수 있습니다.

Microsoft Windows에서는 일반적으로 데이터 원본 이름(DSN)을 구성할 때 드라이버 옵션을 설정합니다. 프로그래밍 방식으로 연결할 때 또는 `HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\your_DSN`에서 레지스트리 키를 추가하거나 변경하여 연결 문자열에 드라이버 옵션을 설정할 수도 있습니다. DSN 구성에 대한 자세한 내용은 [Microsoft Windows에서 Amazon Redshift ODBC 드라이버 사용](install-odbc-driver-windows.md) 섹션을 참조하세요.

macOS X에서는 [ODBC 드라이버 관리자를 사용하여 드라이버 구성ODBC 드라이버 관리자를 사용하여 드라이버 구성](odbc-driver-configure-mac.md) 섹션에서 설명한 바와 같이 드라이버 구성 옵션을 `odbc.ini` 및 `amazon.redshiftodbc.ini` 파일에서 설정합니다. `amazon.redshiftodbc.ini` 파일에서 설정하는 구성 옵션이 모든 연결에 적용됩니다. 반대로 `odbc.ini` 파일에서 설정하는 구성 옵션은 연결에 따라 다릅니다. `odbc.ini`에서 설정하는 구성 옵션이 `amazon.redshiftodbc.ini`에서 설정하는 구성 옵션보다 우선합니다.

ODBC 드라이버 구성 옵션을 설정하는 방법에 대한 자세한 내용은 [Amazon Redshift ODBC Connector Installation and Configuration Guide](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)(Amazon Redshift ODBC 커넥터 설치 및 구성 가이드)를 참조하세요. 

# 이전 ODBC 드라이버 버전
<a name="odbc-previous-versions"></a>

도구에 특정 버전의 드라이버가 필요한 경우에만 이전 버전의 Amazon Redshift ODBC 드라이버를 다운로드합니다.

## Windows용 이전 ODBC 드라이버 버전
<a name="odbc-previous-versions-windows"></a>

다음은 64비트 드라이버입니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC64-1.6.3.1006.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC64-1.6.3.1006.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC64-1.6.1.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC64-1.6.1.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC64-1.5.20.1024.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC64-1.5.20.1024.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC64-1.5.16.1019.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC64-1.5.16.1019.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC64-1.5.9.1011.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC64-1.5.9.1011.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC64-1.5.7.1007.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC64-1.5.7.1007.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC64-1.4.65.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC64-1.4.65.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC64-1.4.62.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC64-1.4.62.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC64-1.4.59.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC64-1.4.59.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC64-1.4.56.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC64-1.4.56.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.53.1000/AmazonRedshiftODBC64-1.4.53.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.53.1000/AmazonRedshiftODBC64-1.4.53.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC64-1.4.52.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC64-1.4.52.1000.msi) 

32비트 드라이버는 단종되었으며 이전 버전은 지원되지 않습니다.

## Linux용 이전 ODBC 드라이버 버전
<a name="odbc-previous-versions-linux"></a>

다음은 64비트 드라이버 버전입니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit-1.6.3.1006-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit-1.6.3.1006-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit-1.6.1.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit-1.6.1.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-64-bit-1.5.20.1024-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-64-bit-1.5.20.1024-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-64-bit-1.5.16.1019-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-64-bit-1.5.16.1019-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-64-bit-1.5.9.1011-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-64-bit-1.5.9.1011-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-64-bit-1.4.62.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-64-bit-1.4.62.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86_64.deb) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86_64.deb) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86_64.deb) 

32비트 드라이버는 단종되었으며 이전 버전은 지원되지 않습니다.

## macOS X용 이전 ODBC 드라이버 버전
<a name="odbc-previous-versions-mac"></a>

다음은 macOS X용 Amazon Redshift ODBC 드라이버 버전입니다.
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit.1.6.3.1006.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit.1.6.3.1006.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit.1.6.1.1000.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit.1.6.1.1000.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.arm64.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.arm64.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.x86_64.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-1.5.16.1019.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-1.5.16.1019.x86_64.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-1.5.9.1011.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-1.5.9.1011.x86_64.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-1.5.7.1007.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-1.5.7.1007.x86_64.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-1.4.65.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-1.4.65.1000.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-1.4.62.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-1.4.62.1000.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-1.4.59.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-1.4.59.1000.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-1.4.56.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-1.4.56.1000.dmg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-1.4.52.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-1.4.52.1000.dmg) 