

# ODBC 2.x 드라이버 시작하기
<a name="odbc-v2-driver-getting-started"></a>

이 섹션의 정보를 사용하여 Amazon Athena ODBC 2.x 드라이버를 시작하세요. 드라이버는 Windows, Linux 및 macOS 운영 체제에서 지원됩니다.

**Topics**
+ [Windows](odbc-v2-driver-getting-started-windows.md)
+ [Linux](odbc-v2-driver-getting-started-linux.md)
+ [macOS](odbc-v2-driver-getting-started-macos.md)

# Windows
<a name="odbc-v2-driver-getting-started-windows"></a>

Windows 클라이언트 컴퓨터를 사용하여 Amazon Athena에 액세스하려면 Amazon Athena ODBC 드라이버가 필요합니다.

## Windows 시스템 요구 사항
<a name="odbc-v2-driver-system-requirements-windows"></a>

웹 브라우저를 사용하지 않고 Amazon Athena 데이터베이스에 직접 액세스하는 클라이언트 컴퓨터에 Amazon Athena ODBC 드라이버를 설치합니다.

사용하는 Windows 시스템에서 다음 요구 사항을 충족해야 합니다.
+ 관리자 권한 보유
+ 다음 운영 체제 중 하나:
  + Windows 11, 10 또는 8.1
  + Windows Server 2019, 2016 또는 2012
  + 지원되는 프로세서 아키텍처: x86\$164(64비트)
+ 사용 가능한 디스크 공간 100MB 이상
+ 64비트 Windows용 [Microsoft Visual C\$1\$1 for Visual Studio 재배포 가능 패키지](https://visualstudio.microsoft.com/downloads/#microsoft-visual-c-redistributable-for-visual-studio-2022)가 설치됨

## Amazon Athena ODBC 드라이버 설치
<a name="odbc-v2-driver-installing"></a>

**Windows용 Amazon Athena ODBC 드라이버를 다운로드하고 설치하려면**

1. `AmazonAthenaODBC-2.x.x.x.msi` 설치 파일을 [다운로드](odbc-v2-driver.md#odbc-v2-driver-download)합니다.

1. 설치 파일을 실행하고 **다음**을 선택합니다.

1. 라이선스 계약 조건에 동의하려면 확인란을 선택하고 **다음**을 선택합니다.

1. 설치 위치를 변경하려면 **찾아보기**를 선택하고 원하는 폴더로 이동한 후 **확인**을 선택합니다.

1. 설치 위치를 수락하려면 **다음**을 선택합니다.

1. **설치**를 선택합니다.

1. 설치가 완료되면 **완료**를 선택합니다.

## 드라이버 구성 옵션을 설정하는 방법
<a name="odbc-v2-driver-ways-to-set-options"></a>

Windows에서 Amazon Athena ODBC 드라이버의 동작을 제어하기 위해 다음과 같은 방법으로 드라이버 구성 옵션을 설정할 수 있습니다.
+ **ODBC 데이터 원본 관리자** 프로그램에서 데이터 소스 이름(DSN)을 구성하는 경우.
+ 다음 위치에서 Windows 레지스트리 키를 추가하거나 변경합니다.

  ```
  HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\YOUR_DSN_NAME
  ```
+ 프로그래밍 방식으로 연결할 때 연결 문자열에서 드라이버 옵션을 설정합니다.

## Windows에서 데이터 소스 이름 구성
<a name="odbc-v2-driver-configuring-dsn-on-windows"></a>

ODBC 드라이버를 다운로드하여 설치한 후에는 데이터 소스 이름(DSN) 항목을 클라이언트 컴퓨터 또는 Amazon EC2 인스턴스에 추가해야 합니다. SQL 클라이언트 도구는 이 데이터 소스를 사용하여 Amazon Athena 데이터베이스에 연결하고 쿼리합니다.

**시스템 DSN 항목을 만들려면**

1. Windows **시작** 메뉴에서 **ODBC 데이터 원본(64비트)**을 마우스 오른쪽 버튼을 클릭하고 **더 보기**, **관리자 권한으로 실행**을 선택합니다.

1. **ODBC 데이터 원본 관리자**에서 **드라이버** 탭을 선택합니다.

1. **이름** 열에 **Amazon Athena ODBC(x64)**가 있는지 확인합니다.

1. 다음 중 하나를 수행하세요.
   + 컴퓨터의 모든 사용자를 위한 드라이버를 구성하려면 **시스템 DSN** 탭을 선택합니다. 다른 계정을 사용하여 데이터를 로드하는 애플리케이션은 다른 계정의 사용자 DSN을 감지하지 못할 수 있으므로 시스템 DSN 구성 옵션을 사용하는 것이 좋습니다.
**참고**  
**시스템 DSN** 옵션을 사용하려면 관리자 권한이 필요합니다.
   + 사용자 계정용으로만 드라이버를 구성하려면 **사용자 DSN** 탭을 선택합니다.

1. **추가**를 선택합니다. **새 데이터 원본 만들기** 대화 상자가 열립니다.

1. **Amazon Athena ODBC(x64)**를 선택하고 **마침**을 선택합니다.

1. **Amazon Athena ODBC 구성** 대화 상자에 다음 정보를 입력합니다. 이러한 옵션에 대한 자세한 내용은 [기본 ODBC 2.x 연결 파라미터](odbc-v2-driver-main-connection-parameters.md) 섹션을 참조하세요.
   + **데이터 소스 이름**에는 데이터 소스를 식별하는 데 사용할 이름을 입력합니다.
   + **설명**에는 데이터 소스를 식별하는 데 도움이 되는 설명을 입력합니다.
   + **리전**에는 Athena를 사용할 AWS 리전의 이름을 입력합니다(예: ** us-west-1**).
   + **카탈로그**에는 Amazon Athena 카탈로그의 이름을 입력합니다. 기본값은 AWS Glue에서 사용하는 **AwsDataCatalog**입니다.
   + **데이터베이스**에는 Amazon Athena 데이터베이스 이름을 입력합니다. 기본값은 **기본값**입니다.
   + **작업 그룹**의 경우 Amazon Athena 작업 그룹의 이름을 입력합니다. 기본값은 **프라이머리**입니다.
   + **S3 출력 위치**의 경우 쿼리 결과가 저장될 Amazon S3의 위치를 입력합니다(예: **s3://amzn-s3-demo-bucket/**).
   + (선택 사항) **암호화 옵션**에서 암호화 옵션을 선택합니다. 기본값은 `NOT_SET`입니다.
   + (선택 사항) **KMS 키**에서 필요하면 암호화 KMS 키를 선택합니다.

1. IAM 인증을 위한 구성 옵션을 지정하려면 **인증 옵션**을 선택합니다.

1. 다음 정보를 입력합니다.
   + **인증 유형**에서 **IAM 보안 인증**을 선택합니다. 이 값이 기본값입니다. 사용할 수 있는 인증 유형에 대한 자세한 내용은 [인증 옵션](odbc-v2-driver-authentication-options.md) 섹션을 참조하세요.
   + **사용자 이름**에는 사용자 이름을 입력합니다.
   + **암호**에는 암호를 입력합니다.
   + 임시 AWS 보안 인증을 사용하려는 경우 **세션 토큰**에 세션 토큰을 입력합니다. 임시 보안 인증에 대한 자세한 내용은 *IAM 사용 설명서*의 [AWS 리소스에서 임시 자격 증명 사용](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)을 참조하세요.

1. **확인**을 선택합니다.

1. **Amazon Athena ODBC 구성** 대화 상자 하단에서 **테스트**를 선택합니다. 클라이언트 컴퓨터가 Amazon Athena에 연결되면 **연결 테스트** 상자에 **연결 성공**이 보고됩니다. 그렇지 않으면 상자에 해당 오류 정보와 함께 **연결 실패**가 보고됩니다.

1. **확인**을 선택하여 연결 테스트를 닫습니다. 이제 생성한 데이터 소스가 데이터 소스 이름 목록에 표시됩니다.

## Windows에서 DSN이 없는 연결 사용
<a name="odbc-v2-driver-dsn-less-connection"></a>

DSN이 없는 연결을 사용하면 데이터 소스 이름(DSN) 없이 데이터베이스에 연결할 수 있습니다. 다음 예제에서는 Amazon Athena에 연결하는 Amazon Athena ODBC(x64) ODBC 드라이버의 연결 문자열을 보여줍니다.

```
DRIVER={Amazon Athena ODBC (x64)};Catalog=AwsDataCatalog;AwsRegion=us-west-1;Schema=test_schema;S3OutputLocation=
s3://amzn-s3-demo-bucket/;AuthenticationType=IAM Credentials;UID=YOUR_UID;PWD=YOUR_PWD;
```

# Linux
<a name="odbc-v2-driver-getting-started-linux"></a>

Linux 클라이언트 컴퓨터를 사용하여 Amazon Athena에 액세스하려면 Amazon Athena ODBC 드라이버가 필요합니다.

## Linux 시스템 사양
<a name="odbc-v2-driver-getting-started-linux-linux-system-requirements"></a>

드라이버를 설치하는 각 Linux 클라이언트 컴퓨터마다 다음 요구 사항을 만족해야 합니다.
+ 루트 액세스 권한이 있습니다.
+ 다음 배포판 중 하나를 사용:
  + RHEL(Red Hat Enterprise Linux) 7 또는 8
  + CentOS 7 또는 8
+ 100MB의 디스크 공간을 사용할 수 있습니다.
+ [unixODBC](https://www.unixodbc.org/) 버전 2.3.1 이상을 사용합니다.
+ [GNU C Library](https://www.gnu.org/software/libc/)(glibc) 버전 2.26 이상을 사용합니다.

## Linux에 ODBC 데이터 커넥터 설치
<a name="odbc-v2-driver-getting-started-linux-installing-the-odbc-data-connector-on-linux"></a>

다음 절차를 따라 Linux 운영 체제에 Amazon Athena ODBC 드라이버를 설치합니다.

**Linux에 Amazon Athena ODBC 드라이버 설치**

1. 다음 명령 중 하나를 입력합니다.

   ```
   sudo rpm -Uvh AmazonAthenaODBC-2.X.Y.Z.rpm
   ```

   또는

   ```
   sudo yum --nogpgcheck localinstall AmazonAthenaODBC-2.X.Y.Z.rpm
   ```

1. 설치가 완료되면 다음 명령 중 하나를 입력하여 드라이버가 설치되었는지 확인합니다.
   + 

     ```
     yum list | grep amazon-athena-odbc-driver
     ```

     출력:

     ```
     amazon-athena-odbc-driver.x86_64 2.0.2.1-1.amzn2int installed
     ```
   + 

     ```
     rpm -qa | grep amazon
     ```

     출력:

     ```
     amazon-athena-odbc-driver-2.0.2.1-1.amzn2int.x86_64
     ```

## Linux에서 데이터 소스 이름 구성
<a name="odbc-v2-driver-getting-started-linux-configuring-a-data-source-name-on-linux"></a>

드라이버가 설치된 후 다음 위치에서 예제 `.odbc.ini` 및 `.odbcinst.ini` 파일을 찾을 수 있습니다.
+ `/opt/athena/odbc/ini/`.

여기에 있는 `.ini` 파일을 Amazon Athena ODBC 드라이버 및 DSN(데이터 소스 이름) 구성의 예제로 사용합니다.

**참고**  
기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 구성 파일인 `.odbc.ini` 및 `.odbcinst.ini`를 사용합니다.

unixODBC를 사용하여 `.odbc.ini` 및 `.odbcinst.ini` 파일의 경로를 지정하려면 다음 단계를 수행합니다.

**unixODBC를 사용하여 ODBC `.ini` 파일 위치 지정**

1. 다음 예제와 같이 `ODBCINI`를 `odbc.ini` 파일의 전체 경로 및 파일 이름으로 설정합니다.

   ```
   export ODBCINI=/opt/athena/odbc/ini/odbc.ini
   ```

1. 다음 예제와 같이 `ODBCSYSINI`를 `odbcinst.ini` 파일이 포함된 디렉토리의 전체 경로로 설정합니다.

   ```
   export ODBCSYSINI=/opt/athena/odbc/ini
   ```

1. 다음 명령을 입력하여 unixODBC 드라이버 관리자 및 올바른 `odbc*.ini` 파일을 사용하고 있는지 확인합니다.

   ```
   username % odbcinst -j
   ```

   샘플 출력

   ```
   unixODBC 2.3.1
   DRIVERS............: /opt/athena/odbc/ini/odbcinst.ini
   SYSTEM DATA SOURCES: /opt/athena/odbc/ini/odbc.ini
   FILE DATA SOURCES..: /opt/athena/odbc/ini/ODBCDataSources
   USER DATA SOURCES..: /opt/athena/odbc/ini/odbc.ini
   SQLULEN Size.......: 8
   SQLLEN Size........: 8
   SQLSETPOSIROW Size.: 8
   ```

1. DSN(데이터 소스 이름)을 사용하여 데이터 스토어에 연결하려는 경우 `odbc.ini` 파일을 구성하여 DSN(데이터 소스 이름)을 정의합니다. 다음 예제와 같이 `odbc.ini` 파일의 속성을 설정하여 데이터 스토어에 대한 연결 정보를 지정하는 DSN을 생성합니다.

   ```
   [ODBC Data Sources]
   athena_odbc_test=Amazon Athena ODBC (x64) 
   
   [ATHENA_WIDE_SETTINGS]  # Special DSN-name to signal driver about logging configuration.
   LogLevel=0              # To enable ODBC driver logs, set this to 1.
   UseAwsLogger=0          # To enable AWS-SDK logs, set this to 1.
   LogPath=/opt/athena/odbc/logs/ # Path to store the log files. Permissions to the location are required. 
   
   [athena_odbc_test]
   Driver=/opt/athena/odbc/lib/libathena-odbc.so
   AwsRegion=us-west-1
   Workgroup=primary
   Catalog=AwsDataCatalog
   Schema=default
   AuthenticationType=IAM Credentials
   UID=
   PWD=
   S3OutputLocation=s3://amzn-s3-demo-bucket/
   ```

1. 다음 예제와 같이 `odbcinst.ini` 파일을 구성합니다.

   ```
   [ODBC Drivers]
   Amazon Athena ODBC (x64)=Installed 
   
   [Amazon Athena ODBC (x64)]
   Driver=/opt/athena/odbc/lib/libathena-odbc.so
   Setup=/opt/athena/odbc/lib/libathena-odbc.so
   ```

1. Amazon Athena ODBC 드라이버를 설치하고 구성한 후에는 다음 예제와 같이 unixODBC `isql` 명령줄 도구를 사용하여 연결을 확인합니다.

   ```
   username % isql -v "athena_odbc_test" 
   +---------------------------------------+
   | Connected!                            |
   |                                       |
   | sql-statement                         |
   | help [tablename]                      |
   | quit                                  |
   |                                       |
   +---------------------------------------+
   SQL>
   ```

## ODBC 드라이버 서명 확인
<a name="verify-odbc-linux-signature"></a>

**중요**  
시스템에 설치하기 전에 Athena ODBC 드라이버 RPM 서명을 확인하는 것이 좋습니다.

다음 단계에 따라 Athena ODBC 드라이버 RPM 패키지의 서명을 확인합니다.

1. **템플릿 준비**

   적절한 퍼블릭 키, RPM의 서명, Amazon S3 버킷에서 호스팅되는 RPM 스크립트에 대응하는 액세스 링크를 사용하여 명령을 준비합니다. 디바이스에 다음 항목을 다운로드해야 합니다.
   +  [Athena ODBC 드라이버](https://downloads.athena.us-east-1.amazonaws.com/drivers/ODBC/v2.1.0.0/Linux/AmazonAthenaODBC-2.1.0.0.rpm) 
   +  [퍼블릭 키](https://downloads.athena.us-east-1.amazonaws.com/drivers/ODBC/v2.1.0.0/Linux/public_key.pem) 
   +  [Athena ODBC RPM 서명](https://downloads.athena.us-east-1.amazonaws.com/drivers/ODBC/v2.1.0.0/Linux/signature.bin) 

1. 디바이스에 Athena ODBC 드라이버, 퍼블릭 키 및 Athena ODBC RPM 서명을 다운로드합니다.

1. 다음 명령을 실행하여 ODBC 드라이버 서명을 확인합니다.

   ```
   openssl dgst -sha256 -verify public_key.pem -signature signature.bin AmazonAthenaODBC-2.1.0.0.rpm
   ```

   확인을 통과하면 `Verified OK`와 유사한 메시지가 표시됩니다. 즉, 이제 Athena ODBC 드라이버를 설치할 수 있다는 뜻입니다.

   `Verification Failure` 메시지가 표시되고 실패한 경우는 RPM의 서명이 변조되었다는 뜻입니다. 1단계에서 언급한 세 파일이 모두 존재하고 경로가 올바르게 지정되어 있으며 다운로드한 후로 파일이 수정되지 않았는지 확인한 다음 확인 과정을 다시 시도하세요.

# macOS
<a name="odbc-v2-driver-getting-started-macos"></a>

macOS 클라이언트 컴퓨터를 사용하여 Amazon Athena에 액세스하려면 Amazon Athena ODBC 드라이버가 필요합니다.

## macOS 시스템 요구 사항
<a name="odbc-v2-driver-getting-started-macos-macos-system-requirements"></a>

드라이버를 설치하는 각 macOS 컴퓨터마다 다음 요구 사항을 만족해야 합니다.
+ macOS 버전 14 이상을 사용합니다.
+ 100MB의 디스크 공간을 사용할 수 있습니다.
+ [iODBC](https://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/WelcomeVisitors) 버전 3.52.16 이상을 사용합니다.

## macOS에 ODBC 데이터 커넥터 설치
<a name="odbc-v2-driver-getting-started-macos-installing-the-odbc-data-connector-on-macos"></a>

macOS 운영 체제용 Amazon Athena ODBC 드라이버를 다운로드하여 설치하려면 다음 절차를 따르세요.

**macOS용 Amazon Athena ODBC 드라이버 다운로드 및 설치**

1. `.pkg` 패키지 파일을 다운로드합니다.

1. `.pkg` 파일을 두 번 클릭합니다.

1. 마법사의 단계를 따라 드라이버를 설치합니다.

1. **라이선스 계약** 페이지에서 **계속**을 누른 다음 **동의**를 선택합니다.

1. **설치**를 선택합니다.

1. 설치가 완료되면 **완료**를 선택합니다.

1. 다음 명령을 입력하여 드라이버가 설치되었는지 확인:

   ```
   > pkgutil --pkgs | grep athenaodbc
   ```

   시스템에 따라 다음 중 하나와 같은 내용이 출력될 수 있습니다.

   ```
   com.amazon.athenaodbc-x86_64.Config
   com.amazon.athenaodbc-x86_64.Driver
   ```

   또는

   ```
   com.amazon.athenaodbc-arm64.Config
   com.amazon.athenaodbc-arm64.Driver
   ```

## macOS에서 데이터 소스 이름 구성
<a name="odbc-v2-driver-getting-started-macos-configuring-a-data-source-name-on-macos"></a>

드라이버가 설치된 후 다음 위치에서 예제 `.odbc.ini` 및 `.odbcinst.ini` 파일을 찾을 수 있습니다.
+ Intel 프로세서 컴퓨터: `/opt/athena/odbc/x86_64/ini/`
+ ARM 프로세서 컴퓨터: `/opt/athena/odbc/arm64/ini/`

여기에 있는 `.ini` 파일을 Amazon Athena ODBC 드라이버 및 DSN(데이터 소스 이름) 구성의 예제로 사용합니다.

**참고**  
기본적으로 ODBC 드라이버 관리자는 홈 디렉터리에 있는 숨겨진 구성 파일인 `.odbc.ini` 및 `.odbcinst.ini`를 사용합니다.

iODBC 드라이버 관리자를 사용하여 `.odbc.ini` 및 `.odbcinst.ini` 파일의 경로를 지정하려면 다음 단계를 수행합니다.

**iODBC 드라이버 관리자를 사용하여 ODBC `.ini` 파일 위치 지정**

1. `ODBCINI`를 `odbc.ini` 파일의 전체 경로 및 파일 이름으로 설정합니다.
   + Intel 프로세서가 탑재된 macOS 컴퓨터의 경우 다음 구문을 사용합니다.

     ```
     export ODBCINI=/opt/athena/odbc/x86_64/ini/odbc.ini
     ```
   + ARM 프로세서가 탑재된 macOS 컴퓨터의 경우 다음 구문을 사용합니다.

     ```
     export ODBCINI=/opt/athena/odbc/arm64/ini/odbc.ini
     ```

1. `ODBCSYSINI`를 `odbcinst.ini` 파일의 전체 경로 및 파일 이름으로 설정합니다.
   + Intel 프로세서가 탑재된 macOS 컴퓨터의 경우 다음 구문을 사용합니다.

     ```
     export ODBCSYSINI=/opt/athena/odbc/x86_64/ini/odbcinst.ini
     ```
   + ARM 프로세서가 탑재된 macOS 컴퓨터의 경우 다음 구문을 사용합니다.

     ```
     export ODBCSYSINI=/opt/athena/odbc/arm64/ini/odbcinst.ini
     ```

1. DSN(데이터 소스 이름)을 사용하여 데이터 스토어에 연결하려는 경우 `odbc.ini` 파일을 구성하여 DSN(데이터 소스 이름)을 정의합니다. 다음 예제와 같이 `odbc.ini` 파일의 속성을 설정하여 데이터 스토어에 대한 연결 정보를 지정하는 DSN을 생성합니다.

   ```
   [ODBC Data Sources]
   athena_odbc_test=Amazon Athena ODBC (x64) 
   
   [ATHENA_WIDE_SETTINGS] # Special DSN-name to signal driver about logging configuration.
   LogLevel=0             # set to 1 to enable ODBC driver logs
   UseAwsLogger=0         # set to 1 to enable AWS-SDK logs
   LogPath=/opt/athena/odbc/logs/ # Path to store the log files. Permissions to the location are required. 
   
   [athena_odbc_test]
   Description=Amazon Athena ODBC (x64)
   # For ARM:
   Driver=/opt/athena/odbc/arm64/lib/libathena-odbc-arm64.dylib
   # For Intel:
   # Driver=/opt/athena/odbc/x86_64/lib/libathena-odbc-x86_64.dylib
   AwsRegion=us-west-1
   Workgroup=primary
   Catalog=AwsDataCatalog
   Schema=default
   AuthenticationType=IAM Credentials
   UID=
   PWD=
   S3OutputLocation=s3://amzn-s3-demo-bucket/
   ```

1. 다음 예제와 같이 `odbcinst.ini` 파일을 구성합니다.

   ```
   [ODBC Drivers]
   Amazon Athena ODBC (x64)=Installed 
   
   [Amazon Athena ODBC (x64)]
   # For ARM:
   Driver=/opt/athena/odbc/arm64/lib/libathena-odbc-arm64.dylib
   Setup=/opt/athena/odbc/arm64/lib/libathena-odbc-arm64.dylib
   # For Intel:
   # Driver=/opt/athena/odbc/x86_64/lib/libathena-odbc-x86_64.dylib
   # Setup=/opt/athena/odbc/x86_64/lib/libathena-odbc-x86_64.dylib
   ```

1. Amazon Athena ODBC 드라이버를 설치하고 구성한 후에는 다음 예제와 같이 `iodbctest` 명령줄 도구를 사용하여 연결을 확인합니다.

   ```
   username@ % iodbctest
   iODBC Demonstration program
   This program shows an interactive SQL processor
   Driver Manager: 03.52.1623.0502 
   
   Enter ODBC connect string (? shows list): ? 
   
   DSN                              | Driver
   ------------------------------------------------------------------------------
   athena_odbc_test                 | Amazon Athena ODBC (x64) 
   
   Enter ODBC connect string (? shows list): DSN=athena_odbc_test;
   Driver: 2.0.2.1 (Amazon Athena ODBC Driver) 
   
   SQL>
   ```