

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# PostgreSQL 진단 지원 스크립트
<a name="CHAP_SupportScripts.PostgreSQL"></a>

다음은 AWS DMS 마이그레이션 구성에서 PostgreSQL RDBMS(온프레미스, Amazon RDS 또는 Aurora PostgreSQL)를 분석하는 데 사용할 수 있는 진단 지원 스크립트입니다. 이러한 스크립트는 소스 또는 대상 엔드포인트에서 작동합니다. 스크립트는 모두 psql 명령줄 유틸리티에서 실행하도록 작성되었습니다.

이러한 스크립트를 실행하기 전에, 사용하려는 사용자 계정에 PostgreSQL RDBMS에 액세스하는 데 필요한 다음과 같은 권한이 있는지 확인합니다.
+ PostgreSQL 10.x 이상 버전 – `pg_catalog.pg_ls_waldir` 함수에 대한 실행 권한이 있는 사용자 계정. 
+ PostgreSQL 9.x 이전 버전 – 기본 권한이 있는 사용자 계정.

이러한 스크립트를 실행하려면 적절한 권한이 있는 기존 계정을 사용하는 것이 좋습니다.

새 사용자 계정을 생성하거나 기존 계정에 이러한 스크립트를 실행할 수 있는 권한을 부여해야 하는 경우, PostgreSQL 버전을 기반으로 하는 모든 PostgreSQL RDBMS에 대해 다음과 같은 SQL 명령을 실행할 수 있습니다.

**PostgreSQL 데이터베이스 버전 10.x 이상에서 이러한 스크립트를 실행할 수 있는 권한을 계정에 부여하려면**
+ 다음 중 하나를 수행하세요.
  + 새 사용자 계정의 경우 다음을 실행합니다.

    ```
    CREATE USER script_user WITH PASSWORD 'password';
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_ls_waldir TO script_user;
    ```
  + 새 사용자 계정의 경우 다음을 실행합니다.

    ```
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_ls_waldir TO script_user;
    ```

**PostgreSQL 9.x 이하 버전의 데이터베이스에서 이러한 스크립트를 실행할 수 있는 권한을 계정에 부여하려면**
+ 다음 중 하나를 수행하세요.
  + 새 사용자 계정의 경우 기본 권한으로 다음을 실행합니다.

    ```
    CREATE USER script_user WITH PASSWORD password;
    ```
  + 기존 사용자 계정의 경우 기존 권한을 사용합니다.

**참고**  
이러한 스크립트는 PostgreSQL 9.x 이하 버전 데이터베이스의 WAL 크기 확인과 관련된 특정 기능을 지원하지 않습니다. 자세한 내용은 AWS Support에 문의하세요.

다음 주제에서는 PostgreSQL에 사용할 수 있는 각 지원 스크립트를 다운로드, 검토, 실행하는 방법을 설명합니다. 스크립트 출력을 검토하고 이를 AWS Support 사례에 업로드하는 방법도 설명합니다.

**Topics**
+ [awsdms\$1support\$1collector\$1postgres.sql 스크립트](#CHAP_SupportScripts.PostgreSQL.Awsdms_Support_Collector_PostgreSQL_Script)

## awsdms\$1support\$1collector\$1postgres.sql 스크립트
<a name="CHAP_SupportScripts.PostgreSQL.Awsdms_Support_Collector_PostgreSQL_Script"></a>

[https://d2pwp9zz55emqw.cloudfront.net/scripts/awsdms_support_collector_postgres.sql](https://d2pwp9zz55emqw.cloudfront.net/scripts/awsdms_support_collector_postgres.sql) 스크립트를 다운로드합니다.

이 스크립트는 PostgreSQL 데이터베이스 구성에 대한 정보를 수집합니다. 스크립트에서 체크섬을 반드시 확인해야 합니다. 체크섬이 확인되면 스크립트의 SQL 코드를 검토하여 실행하기에 부적합한 코드는 모두 주석 처리합니다. 스크립트의 무결성 및 내용에 만족한다면 스크립트를 실행해도 됩니다.

**참고**  
psql 클라이언트 버전 10 이상에서 이 스크립트를 실행할 수 있습니다.

다음 절차에 따라 데이터베이스 환경 또는 명령줄에서 이 스크립트를 실행할 수 있습니다. 둘 중 어떤 경우든 나중에 AWS Support에 파일을 업로드할 수 있습니다.

**이 스크립트를 실행하고 결과를 지원 사례에 업로드하려면**

1. 다음 중 하나를 수행하세요.
   + 아래의 psql 명령줄을 사용하여 데이터베이스 환경에서 스크립트를 실행합니다.

     ```
     dbname=# \i awsdms_support_collector_postgres.sql
     ```

     다음에 나오는 프롬프트에서 마이그레이션할 스키마 중 하나의 이름만 입력합니다.

     다음에 나오는 프롬프트에서 데이터베이스에 연결하기 위해 정의한 사용자 이름(`script_user`)을 입력합니다.
   + 명령줄에서 직접 아래의 스크립트를 실행합니다. 이 옵션을 사용하면 스크립트 실행 전에 프롬프트가 표시되지 않습니다.

     ```
     psql -h database-hostname -p port -U script_user -d database-name -f awsdms_support_collector_postgres.sql
     ```

1. 출력 HTML 파일을 검토하고, 공유하기에 부적합한 정보는 모두 제거합니다. HTML을 공유해도 괜찮다면 AWS Support 사례에 파일을 업로드합니다. 이 파일 업로드에 대한 자세한 내용은 [에서 진단 지원 스크립트 작업 AWS DMS](CHAP_SupportScripts.md) 섹션을 참조하세요.