이제 정말로 재미있는 것을 시도해 보자. 이미 MySQL용 Amazon Aurora 또는 RDS를 사용하는 애플리케이션이 있고 데이터베이스를 AWS의 MySQL HeatWave로 마이그레이션하려고 한다고 가정해 보겠습니다.
먼저 HeatWave가 사용으로 설정된 MySQL DB 시스템이 있어야 합니다. 확장 공간을 확보하여 데이터 세트를 지원할 수 있는 충분한 스토리지로 시스템이 만들어졌는지 확인한 다음 만드는 동안 구성된 데이터베이스 포트를 확인해야 합니다. 기본값은 3306이지만 다음 사항을 확인하기 위해 다시 확인해야 합니다.
나중에 돌아와서 허용된 클라이언트 주소를 조정해야 하므로 이 브라우저 탭을 열어 둘 수 있습니다.
좋습니다. 이제 AWS로 넘어가자.
- AWS 콘솔에 로그인하고 "DMS" 검색을 사용합니다. 데이터베이스 마이그레이션 서비스는 최고의 결과입니다.
- Create replication instance를 누릅니다.
- 이름, 선택적 ARN(Descriptive Amazon Resource Name) 및 설명을 입력합니다. 원하는 구성을 사용할 수 있지만 성능, 즉 비용 비율을 염두에 두십시오. 엔진 버전의 경우 최신은 물론 기본 할당 스토리지도 괜찮아야 합니다(정말 대규모 데이터베이스가 없는 경우 이에 따라 조정).
- VPC의 경우 개발 작업에 적합한 액세스 제어를 사용하여 이전에 설정한 항목을 선택합니다. 공개적으로 액세스할 수 있는지 확인합니다. Multi AZ 옵션의 경우 Dev 또는 테스트 워크로드를 선택하여 단일 가용성 영역을 사용합니다.
- 고급 보안 및 네트워크 구성을 열려면 누릅니다. 서브넷 그룹은 위에서 선택한 VPC를 따르며 가용성 영역은 사용 중인 영역에 해당해야 합니다. 보안 그룹은 이전에 생성한 항목으로 채워져 수신/송신 액세스에 적합한 포트가 구성되도록 해야 합니다. 또한 Publicly accessible 체크 박스가 선택되어 있는지 확인합니다.
- 복제 인스턴스가 시작되려면 몇 분 정도 걸립니다. 커피 시간!
- 준비가 되면 복제 인스턴스에 대한 공용 IP 주소를 가져와야 합니다. 복제 인스턴스 콘솔의 표에 표시됩니다.
- 이제 소스 및 대상 DB 끝점에 대한 접속을 설정해야 합니다. Endpoints 섹션으로 이동합니다. 오른쪽에 Create Endpoint 버튼이 표시되면 누릅니다.
- Source endpoint를 선택하고 Select RDS DB Instance를 선택합니다. RDS 인스턴스 필드가 다음과 같이 채워집니다.
- 끝점 구성의 경우 식별자, ARN 및 소스 엔진이 미리 채워지지만 끝점 데이터베이스 정보에 수동으로 액세스하여 해당 라디오 단추를 누릅니다. 그런 다음 이동 중인 DB에 적합한 데이터베이스 정보를 입력합니다.
- 이제 아래의 끝점 접속을 테스트할 수 있어야 합니다.
- 다음으로 두번째 끝점을 대상으로 생성합니다. 이를 위해서는 MySQL HeatWave 콘솔에서 두 가지 작업을 실행해야 합니다. AWS 콘솔의 MySQL HeatWave로 돌아가서 MySQL 탭을 누릅니다.
그런 다음 사용할 DB 시스템을 누르고 DB 시스템을 편집합니다. DMS 복제 인스턴스의 공용 IP 주소를 허용된 클라이언트 주소에 추가하고 끝에 /32를 추가해야 합니다. [저장]을 클릭합니다. 그런 다음 Instance Summary 섹션에서 Host Name 값을 찾습니다. 문자열을 복사합니다.
- AWS DMS 콘솔로 돌아가서 눌러서 다른 끝점을 생성합니다. 이번에는 대상 끝점을 생성합니다(자연적으로).
- 끝점 구성에서 이름(식별자)을 제공하고 대상 엔진에서 MySQL을 선택합니다. ARN은 선택 사항입니다.
- 다시 한 번 액세스 정보를 수동으로 제공합니다. 서버 이름은 이전에 복사한 호스트 이름입니다. 포트는 3306입니다(다른 포트를 선택하지 않은 경우). 유저 이름/암호는 Target Database에 대해 생성한 것과 일치합니다.
- 이제 마이그레이션 작업을 만듭니다.
- 네비게이션에서 태스크를 선택합니다.
- 작업 생성: 해당 끝점이 유용한 위치입니다!
- 지금은 기본 테이블 매핑을 사용합니다.
기본 테이블 매핑을 선택한 후에는 작업을 저장하고 실행할 수 있어야 합니다.
주: MySQL 셸은 소스 MySQL Server에서 데이터를 익스포트하고 AWS의 DB 시스템/MySQL HeatWave로 임포트하는 데 권장되는 유틸리티입니다. MySQL 셸 덤프 및 로드 유틸리티는 MySQL DB 시스템에 사용하도록 특별히 제작되었습니다. HeatWave에서 쿼리를 실행하는 방법에 대한 자세한 내용은 MySQL 설명서를 참조하십시오.