Amazon Aurora는 기존 엔터프라이즈 데이터베이스의 성능과 가용성에 오픈 소스 데이터베이스의 간편성과 비용 효율성을 결합한 MySQL 및 PostgreSQL 호환 관계형 데이터베이스입니다. 이 자습서에서는 개발 및 테스트를 위해 Aurora DB 클러스터를 복제하는 방법과 역추적을 활성화 및 사용하여 지정한 시간에 DB 클러스터를 ‘되감는’ 방법에 대해 알아봅니다.
데이터베이스 변경의 영향을 평가하거나 워크로드 집약적인 작업(예: 데이터 내보내기 또는 분석 쿼리 실행)을 수행하거나 개발 또는 테스트 환경에서 프로덕션 데이터베이스의 사본을 활용하려고 하는 경우에는 Aurora 클러스터를 복제하는 것이 매우 유용합니다. Aurora DB 클러스터의 복제본은 여러 개 만들 수 있습니다. 다른 복제본에서 추가적인 복제본을 생성할 수도 있지만, 이러한 경우에는 복제 데이터베이스가 소스 데이터베이스와 동일한 리전에서 생성되어야 한다는 제약 사항이 있습니다.
역추적을 사용하면 사용자가 지정한 시간으로 Aurora DB 클러스터를 되감을 수 있습니다. 역추적을 활성화하면 Aurora는 데이터베이스의 변경 내용을 계속해서 기록하여 사용자는 이전의 일관된 상태로 전환할 수 있습니다. 이 기능을 통해 사용자는 실수한 경우 편리하게 실행을 취소할 수 있습니다. 예를 들어, 실수로 안전하지 않은 작업(예: WHERE 절을 사용하지 않는 DELETE)을 수행하는 경우 해당 사고 시점 이전의 상태로 빠르게 역추적하는 것이 가능합니다. 보다 속도가 느린 작업인 스냅샷 또는 자동 백업에서 복구와 달리, 역추적을 사용하면 몇 분 만에 시간 상에서 앞뒤로 이동할 수 있습니다.
이 자습서에서는 역추적 기능이 활성화된 Aurora DB 클러스터를 생성합니다. 그리고 클러스터에 데이터를 추가한 후 역추적 기능을 사용하여 시간 상에서 앞뒤로 이동하는 실습을 하며, 데이터베이스를 복제하고 해당 사본에서 쿼리를 수행합니다.
이 자습서는 프리 티어로 제공되지 않으며, 비용은 자습서의 단계를 따르고 자습서 종료 시 리소스를 종료하는 경우 1 USD 미만입니다.
사전 조건
데이터베이스에 연결하고 데이터베이스에 명령을 내릴 수 있어야 합니다. DB 클러스터에 퍼블릭 IP 주소를 지정하지 않는 것이 권장되므로, DB 클러스터와 동일한 VPC에 EC2 인스턴스가 있어야 합니다. 아직 실행한 EC2 인스턴스가 없으면 이 지침에 따라 인스턴스를 프로비저닝하십시오.
그러면 sudo yum install mysql을 실행하여 MySQL 클라이언트를 설치할 수 있습니다.
자습서 소개 | |
---|---|
시간 | 10-20분 |
요금 | 1 USD 미만 |
사용 사례 | 데이터베이스 |
제품 | Amazon Aurora, Amazon RDS |
대상 | 데이터베이스 관리자, 개발자 |
레벨 | 중급자용 |
최종 업데이트 날짜 | 2019년 7월 17일 |
1단계: Aurora DB 클러스터 만들기
1.1 - 브라우저를 열고 Amazon RDS 콘솔로 이동합니다. 이미 AWS 계정이 있으면 콘솔에 로그인합니다. 그렇지 않으면, 새 AWS 계정을 만든 후 시작합니다.
계정이 있습니까? 계정에 로그인합니다.
1.21 - ‘삭제 보호’에서 ‘삭제 보호 사용’의 선택을 해제합니다.
모범 사례는 삭제 보호를 사용하는 것이지만, 자습서의 마지막에 데이터베이스를 삭제하려면 이 옵션을 선택 해제 상태로 유지합니다.
인스턴스가 생성되는 동안 자격 증명을 얻을 수 있는 방법을 설명하는 배너가 표시됩니다. 이때만 이 암호를 볼 수 있기 때문에 자격 증명을 저장할 수 있습니다.
1.23 - [자격 증명 세부 정보 보기]를 클릭합니다.
2단계: 데이터베이스 채우기
터미널 창을 열고 애플리케이션 인스턴스에 로그인한 후 mysql 명령줄 클라이언트를 사용하여 Aurora DB 클러스터에 연결합니다. 그러면 데이터베이스를 생성하고 테이블을 생성하며 레코드를 작성할 수 있습니다.
2.1 - 프라이머리 데이터베이스에 연결:
$ mysql -h endpoint -P 3306 -u admin -p
명령에서 엔드포인트를 읽을 때마다 1.24단계에서 저장한 엔드포인트 호스트 이름을 입력해야 합니다.
유사하게, 암호를 입력하라는 메시지가 표시되면 1.24단계에서 저장한 암호를 입력합니다.
2.2 - 데이터베이스를 생성하고 데이터를 작성합니다.
mysql> CREATE database tutorial;
Query OK, 1 row affected (0.01 sec)
지금은 자습서 데이터베이스를 사용하여 테이블을 생성하고 레코드를 추가할 수 있습니다.
3단계: 데이터베이스 역추적
DB 클러스터 역추적
3.3 - 날짜 및 시간을 선택합니다. Aurora는 새로운 DB 클러스터를 생성하지 않고 지정된 시점으로 DB 클러스터를 되감습니다. 데이터베이스 또는 테이블을 생성한 시점 이전의 시간을 선택할 수 있습니다.
4단계: 데이터베이스 복제
5단계: 클러스터 삭제
이 자습서의 마지막 단계로, 추가 요금을 피하기 위해 더 이상 필요하지 않은 Aurora DB 클러스터를 삭제하는 방법에 대해 알아보겠습니다. Aurora DB 클러스터를 삭제하려면 RDS 대시보드로 이동한 후 다음 지침을 따릅니다.
5.10 - [작업]을 클릭하고 [삭제]를 선택합니다.
최종 백업 생성 여부를 묻는 메시지가 표시됩니다. 최종 백업을 생성하는 것은 권장되지만, 이 자습서에서는 필요하지 않습니다.
축하합니다!
역추적 기능이 활성화된 Aurora DB 클러스터를 생성하셨습니다. 데이터베이스를 통해 시간 상에서 앞뒤로 이동할 수 있는 시간 범위를 구성할 수 있는 방법에 대해 학습하셨습니다. 마지막으로 Aurora DB 클러스터 복제 방법에 대해서도 학습하셨습니다.