PostgreSQL DB 인스턴스 생성 및 PostgreSQL DB 인스턴스의 데이터베이스에 연결 - Amazon Relational Database Service

PostgreSQL DB 인스턴스 생성 및 PostgreSQL DB 인스턴스의 데이터베이스에 연결

DB 인스턴스를 만드는 가장 쉬운 방법은 AWS Management Console을 사용하는 것입니다. DB 인스턴스를 생성한 후에는 pgAdmin 유틸리티 같은 표준 SQL 클라이언트 유틸리티를 사용해 DB 인스턴스에 연결할 수 있습니다. 이 예에서는 db.r6g.large DB 인스턴스 클래스와 100기비바이트(GiB)의 스토리지를 사용하는 database-1이라는 PostgreSQL 데이터베이스 엔진을 실행하는 DB 인스턴스를 생성합니다.

중요

DB 인스턴스를 생성하거나 DB 인스턴스에 연결하려면 먼저 Amazon RDS에 대한 설정 섹션의 태스크를 완료해야 합니다.

AWS 계정 생성은 무료입니다. 그러나 이 튜토리얼을 완료하면 사용하는 AWS 리소스에 대한 비용이 발생할 수 있습니다. 자습서가 더 이상 필요하지 않은 경우 자습서를 완료한 후에 이러한 리소스를 삭제할 수 있습니다.

PostgreSQL DB 인스턴스 생성

Amazon RDS의 기본 빌딩 블록은 DB 인스턴스입니다. PostgreSQL 데이터베이스를 생성하는 환경입니다.

AWS Management Console에서 [간편 생성(Easy create)]을 사용하여 PostgreSQL을 실행하는 DB 인스턴스를 생성할 수 있습니다. [간편 생성(Easy create)]에서는 DB 엔진 유형, DB 인스턴스 크기 및 DB 인스턴스 식별자만 지정합니다. [간편 생성(Easy create)]은 다른 구성 옵션에서도 기본 설정을 사용합니다. [간편 생성(Easy create)] 대신 [표준 생성(Standard Create)]을 사용하는 경우에는 데이터베이스를 생성할 때 가용성, 보안, 백업 및 유지 관리에 대한 옵션을 포함하여 더 많은 구성 옵션을 지정합니다.

이 예제에서는 [간편 생성(Easy create)]을 사용하여 db.r6g.large DB 인스턴스 클래스에서 PostgreSQL 데이터베이스 엔진을 실행하는 DB 인스턴스를 생성합니다.

참고

Standard Create(표준 생성)를 사용하여 DB 인스턴스를 생성하는 방법에 대한 자세한 내용은 Amazon RDS DB 인스턴스 생성 단원을 참조하세요. 프리 티어를 사용하려면 [표준 생성(Standard create)]을 사용하세요.

Easy create(간편 생성)을 사용하여 PostgreSQL DB 인스턴스를 생성하려면

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. Amazon RDS 콘솔의 오른쪽 상단에서 DB 인스턴스를 생성하려는 AWS 리전을 선택합니다.

  3. 탐색 창에서 데이터베이스를 선택합니다.

  4. [데이터베이스 생성(Create database)]을 선택하고 [간편 생성(Easy Create)]이 선택되어 있는지 확인합니다.

    
    							Easy create(간편 생성) 옵션
  5. 구성에서 PostgreSQL을 선택합니다.

  6. DB instance size(DB 인스턴스 크기)에서 개발/테스트를 선택합니다.

  7. DB 인스턴스 식별자에 DB 인스턴스의 이름을 입력하거나 기본 이름을 그대로 유지합니다.

  8. 마스터 사용자 이름에 마스터 사용자의 이름을 입력하거나 기본 이름을 그대로 유지합니다.

    데이터베이스 생성 페이지는 다음 이미지와 비슷해야 합니다.

    
    							데이터베이스 생성 페이지
  9. DB 인스턴스에서 자동 생성된 마스터 암호를 사용하려면 [암호 자동 생성(Auto generate a password)] 확인란을 선택해야 합니다.

    마스터 암호를 입력하려면 [암호 자동 생성(Auto generate a password)] 확인란의 선택을 해제한 다음, [마스터 암호(Master password)] 및 [암호 확인(Confirm password)]에 동일한 암호를 입력합니다.

  10. (선택 사항) View default settings for Easy create(간편 생성 기본 설정 보기)를 엽니다.

    
    							RDS for PostgreSQL 인스턴스 설정

    [간편 생성(Easy Create)]과 함께 사용되는 기본 설정을 검토할 수 있습니다. Editable after database creation(데이터베이스 생성 후 편집 가능) 열에는 데이터베이스 생성 후 어떤 옵션을 변경할 수 있는지 나와 있습니다.

    • 이 열에 [아니요(No)]로 표시된 설정을 변경하려면 [표준 생성(Standard create)]을 사용합니다.

    • 이 열에 [예(Yes)]로 표시된 설정을 변경하려면 [표준 생성(Standard Create)]을 사용하거나 DB 인스턴스가 생성된 후 인스턴스를 수정합니다.

    다음은 기본 설정을 변경할 때 고려해야 할 중요한 사항입니다.

    • Amazon VPC 서비스 기반의 Virtual Private Cloud(VPC)를 DB 인스턴스에서 사용해야 하는 경우가 있습니다. 또는 특정 서브넷 그룹 또는 보안 그룹이 필요할 수 있습니다. 이 경우 [표준 생성(Standard create)]을 클릭하여 이러한 리소스를 지정합니다. Amazon RDS를 설정할 때 이러한 리소스를 생성했을 수 있습니다. 자세한 정보는 보안 그룹을 생성하여 VPC 내부의 DB 인스턴스에 대한 액세스를 제공을 참조하십시오.

    • VPC 외부의 클라이언트에서 DB 인스턴스에 액세스하려면 [표준 생성(Sctandard reate)]을 사용하여 [퍼블릭 액세스(Public access)]를 [예(Yes)]로 설정합니다.

      DB 인스턴스가 프라이빗이어야 하는 경우 [퍼블릭 액세스(Public access)]를 [아니요(No)]로 설정된 상태로 둡니다.

    • 프리 티어를 사용하려면 [표준 생성(Standard create)]을 클릭하여 PostgreSQL 버전을 버전 13 이전 버전으로 설정한 다음 [템플릿(Templates)]에서 [프리 티어(Free tier)]를 선택합니다.

  11. 데이터베이스 생성을 선택합니다.

    자동 생성된 암호를 사용하기로 한 경우에는 데이터베이스 페이지에 View credential details(자격 증명 세부 정보 보기) 버튼이 나타납니다.

    DB 인스턴스의 마스터 사용자 이름 및 암호를 보려면 View credential details(자격 증명 세부 정보 보기)를 선택합니다.

    
    							자동 암호 생성 이후의 마스터 사용자 자격 증명.

    DB 인스턴스를 마스터 사용자로 연결하려면 화면에 나타난 사용자 이름과 암호를 사용합니다.

    중요

    마스터 사용자 암호를 다시 볼 수는 없습니다. 따라서 기록을 해두지 않으면 이를 변경해야 합니다.

    DB 인스턴스가 사용 가능한 상태가 되고 난 후에 마스터 사용자 암호를 변경해야 하는 경우에는 다음과 같은 방법으로 DB 인스턴스를 수정할 수 있습니다. DB 인스턴스 변경에 대한 자세한 내용은 Amazon RDS DB 인스턴스 수정 단원을 참조하십시오.

  12. 데이터베이스에서 새 PostgreSQL DB 인스턴스의 이름을 선택합니다.

    RDS 콘솔에 새 DB 인스턴스의 세부 정보가 표시됩니다. DB 인스턴스를 사용할 준비가 될 때까지 DB 인스턴스의 상태는 생성 중입니다. 상태가 사용 가능으로 변경되면 DB 인스턴스에 연결할 수 있습니다. DB 인스턴스 클래스와 스토리지의 양에 따라 새 인스턴스를 사용할 수 있을 때까지 최대 20분이 걸릴 수 있습니다.

    
    							DB 인스턴스 세부 정보의 스크린샷입니다.

PostgreSQL DB 인스턴스에 연결

Amazon RDS가 DB 인스턴스를 프로비저닝한 후에는 표준 SQL 클라이언트 애플리케이션을 사용해 인스턴스에 연결할 수 있습니다. 다음은 PostgreSQL DB 인스턴스에 연결하는 두 가지 방법입니다. 첫 번째 예에서는 PostgreSQL의 잘 알려진 오픈 소스 관리 및 개발 도구인 pgAdmin을 사용합니다. 클라이언트 컴퓨터에 PostgreSQL의 로컬 인스턴스가 없어도 pgAdmin을 다운로드하고 사용할 수 있습니다. 두 번째 예에서는 PostgreSQL 설치에 속하는 명령행 유틸리티인 psql을 사용합니다. psql을 사용하려면 클라이언트 컴퓨터에 PostgreSQL이 있거나 psql 클라이언트가 설치되어 있어야 합니다.

DB 인스턴스에 연결을 시도하기 전에 DB 인스턴스가 액세스 권한을 제공하는 보안 그룹과 연결되어 있는지 확인합니다. 자세한 정보는 보안 그룹을 생성하여 VPC 내부의 DB 인스턴스에 대한 액세스를 제공을 참조하십시오.

DB 인스턴스에 연결하는 데 어려움이 있는 경우도 있습니다. 그런 경우 문제의 원인은 대부분 DB 인스턴스에 할당한 보안 그룹에서 설정한 액세스 규칙에 있습니다. DB 인스턴스를 만들 때 적절한 보안 그룹을 지정하지 않은 경우 DB 인스턴스를 수정하여 보안 그룹을 변경할 수 있습니다. 자세한 정보는 Amazon RDS DB 인스턴스 수정을 참조하십시오.

DB 인스턴스에 공개적으로 액세스할 수 있는 경우 연결된 보안 그룹에 액세스하려는 IP 주소에 대한 인바운드 규칙이 있는지 확인합니다. DB 인스턴스가 프라이빗인 경우 연결된 보안 그룹에 Amazon EC2 인스턴스의 보안 그룹과 같이 액세스하려는 각 리소스의 보안 그룹에 대한 인바운드 규칙이 있는지 확인합니다.

PostgreSQL DB 인스턴스 연결에 대한 자세한 내용은 PostgreSQL 데이터베이스 엔진을 실행하는 DB 인스턴스에 연결 섹션을 참조하세요. DB 인스턴스에 연결할 수 없는 경우 RDS for PostgreSQL 인스턴스에 대한 연결 문제 해결 단원을 참조하십시오.

pgAdmin을 사용해 PostgreSQL DB 인스턴스에 연결

pgAdmin을 사용해 PostgreSQL DB 인스턴스에 연결하는 방법

  1. DB 인스턴스의 엔드포인트(DNS 이름)와 포트 번호를 찾습니다.

    1. RDS 콘솔을 연 다음 데이터베이스를 선택해 DB 인스턴스의 목록을 표시합니다.

    2. 세부 정보를 표시하고자 하는 PostgreSQL DB 인스턴스 이름을 선택합니다.

    3. Connectivity & security(연결 및 보안) 탭에서 엔드포인트를 복사합니다. 또한 포트 번호를 적어 둡니다. DB 인스턴스에 연결하려면 엔드포인트와 포트 번호가 모두 필요합니다.

      
    										PostgreSQL DB 인스턴스에 연결
    4. 구성(Configuration) 탭에서 DB 이름을 확인해 둡니다. pgAdmin을 사용하여 연결하는 데는 필요하지 않지만 psql을 사용하여 연결하는 데 필요합니다.

      
    										구성(Configuration) 탭에서 데이터베이스 이름(DB 이름)을 붙입니다.
  2. https://www.pgadmin.org/에서 pgAdmin을 설치하세요. 클라이언트 컴퓨터에 PostgreSQL의 로컬 인스턴스가 없어도 pgAdmin을 다운로드하고 사용할 수 있습니다.

  3. 클라이언트 컴퓨터에서 pgAdmin 애플리케이션을 실행합니다.

  4. [File] 메뉴에서 [Add Server]를 선택합니다.

  5. New Server Registration(새 서버 등록) 대화 상자의 호스트 상자에 DB 인스턴스 엔드포인트(예: database-1.123456789012.us-west-1.rds.amazonaws.com)를 입력합니다. Amazon RDS 콘솔(database-1.c6c8dntfzzhgv0.us-west-1.rds.amazonaws.com:5432)에 표시된 대로 콜론 또는 포트 번호를 포함하지 않아야 합니다.

    포트의 DB 인스턴스에 할당한 포트를 입력합니다. 사용자 이름암호에 DB 인스턴스를 생성할 때 입력한 사용자 이름과 사용자 암호를 입력합니다.

    
								PostgreSQL 연결
  6. 확인을 선택합니다.

  7. Object browser(객체 브라우저)에서 Server Groups(서버 그룹)를 확장합니다. 생성한 서버(DB 인스턴스)를 선택한 다음 데이터베이스 이름을 선택합니다.

    
								PostgreSQL 연결
  8. 플러그인 아이콘을 선택하고 [PSQL Console]을 선택합니다. 생성한 기본 데이터베이스에 대해 psql 명령 창이 열립니다.

    
								PostgreSQL 연결
  9. 명령 창을 사용해 SQL 또는 psql 명령을 입력합니다. \q를 입력해 창을 닫습니다.

psql을 사용해 PostgreSQL DB 인스턴스에 연결

클라이언트 컴퓨터에 PostgreSQL이 설치되어 있으면 psql의 로컬 인스턴스를 사용해 PostgreSQL DB 인스턴스에 연결할 수 있습니다. psql을 사용해 PostgreSQL DB 인스턴스에 연결하려면 호스트 정보, 포트 번호, 액세스 자격 증명 및 데이터베이스 이름을 제공해야 합니다. pgAdmin을 사용해 PostgreSQL DB 인스턴스에 연결 프로시저의 첫 번째 단계를 수행하여 이러한 세부 정보를 얻을 수 있습니다.

다음 형식을 사용해 Amazon RDS에서 PostgreSQL DB 인스턴스에 연결합니다.

psql --host=DB_instance_endpoint --port=port --username=master_user_name --password --dbname=database_name

예를 들어 다음 명령은 가상 자격 증명을 사용해 mypgdb이라는 PostgreSQL DB 인스턴스에서 mypostgresql라는 데이터베이스에 연결합니다.

psql --host=database-1.123456789012.us-west-1.rds.amazonaws.com --port=5432 --username=awsuser --password --dbname=postgres

DB 인스턴스 삭제

생성된 샘플 DB 인스턴스에 연결한 후에는 이에 대한 요금이 더 이상 부과되지 않도록 DB 인스턴스를 삭제해야 합니다.

최종 DB 스냅샷이 없는 DB 인스턴스를 삭제하려면

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 데이터베이스를 선택합니다.

  3. 삭제할 DB 인스턴스를 선택합니다.

  4. [ Actions]에 대해 [Delete]를 선택합니다.

  5. 최종 스냅샷 생성?에서 아니요를 선택하고 확인을 선택합니다.

  6. 삭제를 선택합니다.