이 빠른 시작에서는 Database Migration Service를 사용하여 데이터를 MySQL용 Cloud SQL로 마이그레이션하는 방법을 보여줍니다. 이 빠른 시작에서 만든 리소스는 정리 단계까지 모든 단계를 적시에 완료한다고 가정할 때 1달러 (USD) 미만의 비용이 소요됩니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Database Migration Service API.
- 사용자 계정에 데이터베이스 마이그레이션 관리자 역할이 할당되었는지 확인합니다.
요구사항
Database Migration Service는 다양한 소스 데이터베이스 옵션과 연결 방법을 제공합니다. 소스마다 더 효과적인 연결 방법이 있습니다. 이 빠른 시작에서는 네트워크를 구성하여 인바운드 방화벽 규칙을 추가할 수 있는 환경에서 독립형 MySQL 데이터베이스를 사용하고 있다고 가정합니다. 소스 데이터베이스는 온프레미스 또는 클라우드 제공업체에 있어야 합니다. Google에서는 사용자 환경의 세부사항을 알 수 없기 때문에 네트워킹 구성과 관련해서 세부 단계를 제공할 수 없습니다.
이 빠른 시작에서는 소스 데이터베이스 엔진으로 MySQL을 선택하고 네트워킹 방법으로 IP 허용 목록을 선택합니다.
소스 연결 프로필 만들기
연결 프로필을 만들면 소스 데이터베이스에 관한 정보가 포함된 레코드가 생성됩니다. Database Migration Service는 연결 프로필의 정보를 사용하여 소스 데이터베이스의 데이터를 대상 Cloud SQL 데이터베이스 인스턴스로 마이그레이션합니다.Google Cloud 콘솔에서 Database Migration Service 연결 프로필 페이지로 이동합니다.
프로필 만들기를 클릭합니다.
연결 프로필 만들기 페이지의 프로필 역할 목록에서 소스를 선택합니다.
데이터베이스 엔진 목록에서 소스 데이터베이스의 다음 분류 유형 중 하나를 선택합니다.
- 독립형 MySQL 인스턴스 (MySQL)
- 기존 MySQL용 Cloud SQL 인스턴스 (MySQL용 Cloud SQL)
- MySQL용 Amazon RDS 인스턴스 (MySQL용 Amazon RDS)
이 빠른 시작에서는 MySQL을 선택합니다.
- 다음 정보를 제공합니다.
- 연결 프로필 이름 필드에 소스 데이터베이스의 연결 프로필 이름을 입력합니다(예:
My Connection Profile
). - 자동 생성된 연결 프로필 ID를 그대로 둡니다.
- 연결 정보를 입력합니다.
- 자체 호스팅 데이터베이스에서 복제하는 경우 호스트 이름 또는 IP 주소 (도메인 또는 IP)와 포트를 입력하여 호스트에 액세스합니다. 기본 MySQL 포트는 3306입니다.
- Cloud SQL 데이터베이스에서 복제하는 경우 드롭다운 목록에서 Cloud SQL 인스턴스를 선택합니다.
- 사용자 이름과 비밀번호를 입력하여 소스 인스턴스에 인증을 수행합니다.
- (선택사항) 공개 네트워크 (IP 허용 목록 사용)를 통해 민감한 정보를 전송하려는 경우 소스 데이터베이스와 대상 데이터베이스 간의 연결에 SSL/TLS 암호화를 사용하는 것이 좋습니다. 그렇지 않으면 기본값인 None을 유지합니다.
- 연결 프로필 이름 필드에 소스 데이터베이스의 연결 프로필 이름을 입력합니다(예:
페이지의 연결 프로필 리전 섹션에서 연결 프로필을 저장할 리전을 선택합니다.
- 만들기를 클릭합니다.
마이그레이션 작업 만들기
Database Migration Service는 마이그레이션 작업을 사용하여 소스 데이터베이스 인스턴스에서 대상 Cloud SQL 데이터베이스 인스턴스로 데이터를 마이그레이션합니다.마이그레이션 작업을 만들면 다음이 포함됩니다.
- 작업 설정 정의
- 소스 데이터베이스에 대해 만든 연결 프로필 (소스 연결 프로필) 선택
- 대상 Cloud SQL 데이터베이스 인스턴스의 설정 정의
- 소스 및 대상 데이터베이스 인스턴스 간의 연결 설정
- 마이그레이션 작업을 테스트하여 작업에 대해 제공한 연결 정보가 유효한지 확인합니다.
마이그레이션 작업의 설정 정의
Google Cloud 콘솔에서 Database Migration Service 마이그레이션 작업 페이지로 이동합니다.
이전 작업 만들기를 클릭합니다.
마이그레이션 작업 이름 필드에 마이그레이션 작업의 이름(예:
My Migration Job
)을 입력합니다.자동 생성된 이전 작업 ID를 그대로 둡니다.
소스 데이터베이스 엔진 드롭다운 목록을 열고 소스 데이터베이스의 분류 유형을 선택합니다. Database Migration Service는 대상 데이터베이스 엔진을 자동으로 선택합니다.
대상 인스턴스를 만들 대상 리전을 선택합니다.
소스 데이터베이스에서 진행 중인 변경사항을 대상 Cloud SQL 데이터베이스 인스턴스로 마이그레이션하려면 마이그레이션 작업 유형을 '연속'으로 설정합니다.
마이그레이션 작업에 맞게 환경을 준비해야 하는 방법이 자동으로 반영되도록 생성된 필수 기본 요건을 검토합니다. 이러한 기본 요건에는 소스 데이터베이스를 구성하는 방법과 대상 Cloud SQL 데이터베이스 인스턴스에 연결하는 방법이 포함될 수 있습니다. 이 단계에서 이러한 기본 요건을 완료하는 것이 가장 좋지만, 마이그레이션 작업을 테스트하거나 시작하기 전 언제라도 이를 완료할 수 있습니다. 이러한 기본 요건에 대한 자세한 내용은 소스 구성을 참고하세요.
저장 후 계속을 클릭합니다.
소스 연결 프로필 정보 지정
소스 연결 프로필 선택 드롭다운 목록을 열고 내가 만든 연결 프로필을 선택합니다.
저장 후 계속을 클릭합니다.
대상 Cloud SQL 인스턴스의 설정 정의
Cloud SQL 인스턴스의 대상 인스턴스 ID를 입력합니다. 기본적으로 이전 작업 ID가 이 필드에 미리 입력됩니다. 이 이름을 유지하거나 다른 이름을 입력할 수 있습니다.
대상 Cloud SQL 인스턴스의 영숫자 비밀번호를 입력합니다. 이는 인스턴스의
root
관리자 계정 비밀번호입니다.비밀번호를 직접 입력하거나 생성을 클릭하여 Database Migration Service에서 자동으로 비밀번호를 만들도록 할 수 있습니다.
지정된 데이터베이스 엔진에 지원되는 Cloud SQL 버전 목록에서 대상 인스턴스의 데이터베이스 버전을 선택합니다.
새 Cloud SQL 인스턴스에 원하는 Google Cloud 영역을 선택하거나 'Any'로 둡니다.
이 빠른 시작에서는 IP 허용 목록을 네트워킹 방법으로 사용하기 때문에 공개 IP 체크박스를 선택합니다. 이 방법은 Cloud SQL 인스턴스의 발신 IP 주소에서 들어오는 연결을 수락하도록 소스 데이터베이스 서버를 구성하는 방식으로 작동합니다.
Cloud SQL 인스턴스의 머신 유형을 선택합니다. 디스크 크기는 소스 데이터베이스 크기 이상이어야 합니다.
Cloud SQL 인스턴스의 스토리지 유형과 스토리지 용량을 정의합니다.
만들기 및 계속을 클릭하여 새 인스턴스를 만듭니다.
후속 대화상자에서 대상 만들기 및 계속을 클릭합니다. 인스턴스 생성을 완료하는 데 몇 분 정도 걸릴 수 있습니다.
연결 설정
- 소스 데이터베이스와 대상 데이터베이스 간에 연결을 설정하는 데 사용할 네트워킹 방법을 선택합니다. 이 빠른 시작에서는 연결 방법 목록을 사용하여 IP 허용 목록을 네트워킹 방법으로 선택합니다.
- 소스 IP 주소가 이 필드에 자동으로 입력되지 않은 경우 콘솔에서 Cloud SQL 인스턴스의 발신 IP 주소를 복사하여 이 IP 주소의 연결을 수락하도록 소스 데이터베이스 서버의 네트워크 방화벽을 구성합니다.
- 방화벽 규칙에서 대상 Cloud SQL 인스턴스의 연결 IP 주소에서 포트 3306에 연결할 수 있도록 인바운드 (또는 인그레스) 규칙을 만듭니다.
- 구성 및 계속을 클릭하여 연결 프로필 구성을 완료합니다.
마이그레이션 작업 테스트 및 만들기
마이그레이션 작업에 선택한 설정을 검토합니다.
테스트 작업을 클릭하여 소스가 올바르게 구성되었고 소스 및 대상 인스턴스가 서로 통신할 수 있으며 마이그레이션 작업이 유효한지 확인합니다.
'테스트 통과' 상태가 표시되는지 확인합니다.
테스트에 실패하면 흐름의 적절한 부분에서 문제를 해결한 후 다시 테스트할 수 있습니다.
작업 만들기 및 시작을 클릭하여 마이그레이션 작업을 만들고 즉시 시작합니다.
후속 대화상자에서 시작을 클릭합니다.
마이그레이션 작업 페이지에서 마이그레이션 작업의 상태가 '시작 중'인지 확인합니다. 몇 분 후 상태가 '실행 중'으로 변경되는지 확인합니다.
마이그레이션 작업 확인
이 섹션에서는 Database Migration Service가 마이그레이션 작업을 사용하여 소스 데이터베이스 인스턴스에서 대상 Cloud SQL 데이터베이스 인스턴스로 데이터를 마이그레이션했는지 확인합니다.
- Google Cloud 콘솔에서 SQL 인스턴스 페이지로 이동합니다.
- 마이그레이션 작업의 읽기 복제 항목을 클릭합니다.
- 페이지 오른쪽 상단에 표시되는 Cloud Shell 활성화 아이콘을 클릭합니다.
- Google Cloud Shell 프롬프트에서 Enter 키를 누릅니다.
- 선택사항: Cloud Shell 승인 대화상자가 표시되면 승인을 클릭합니다.
- 대상 Cloud SQL 데이터베이스 인스턴스에 연결합니다.
- 비밀번호 입력 프롬프트에서 대상 Cloud SQL 인스턴스 설정 정의에서 제공했거나 Database Migration Service에서 생성한 비밀번호를 입력합니다.
- mysql 프롬프트에서
show databases;
를 입력하여 데이터베이스를 나열하고 소스 데이터베이스 인스턴스가 표시되는지 확인합니다. - 이 데이터베이스 인스턴스와 연결된 테이블을 보려면 mysql 프롬프트에서
use source_database_instance_name;
를 입력합니다. - mysql 프롬프트에서
show tables;
를 입력하여 이 인스턴스의 테이블을 확인합니다. - mysql 프롬프트에서
select * from table_name;
을 입력하여 소스 데이터베이스 인스턴스의 테이블에서 복제된 정보를 확인합니다. - 테이블에 올바른 정보가 표시되는지 확인합니다.
그러면 Database Migration Service에서 데이터를 이전했음을 확인할 수 있습니다.
마이그레이션 작업 승격
이제 마이그레이션 작업을 승격할 수 있습니다. 따라서 대상 Cloud SQL 데이터베이스 인스턴스가 소스 데이터베이스 인스턴스를 기본 데이터베이스로 대체합니다.
마이그레이션 작업 페이지로 돌아갑니다.
승격할 마이그레이션 작업을 클릭합니다. 마이그레이션 작업 세부정보 페이지가 표시됩니다.
복제 지연이 0에 가까워질 때까지 기다립니다.
소스 데이터베이스에 대한 모든 쓰기를 중지합니다.
복제 지연 시간이 0이 될 때까지 기다립니다.
승격할 마이그레이션 작업을 클릭합니다. 이 작업의 상태는 '실행 중'이어야 합니다.
승격을 클릭하여 마이그레이션 작업을 승격합니다.
후속 대화상자에서 승격을 다시 클릭합니다.
마이그레이션 작업의 상태가 '승격 진행 중'인지 확인합니다. 몇 분 후에 상태가 '완료됨'으로 변경되는지 확인합니다.
새 Cloud SQL 데이터베이스 인스턴스를 사용할 준비가 되었습니다.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
- 마이그레이션 작업, 연결 프로필, Cloud SQL 인스턴스, 프로젝트가 필요하지 않은 경우 Google Cloud 콘솔을 사용하여 삭제합니다.
다음 단계
- 연결 프로필을 관리하는 방법을 자세히 알아보세요.
- 이전 작업 상태에 대해 자세히 알아보세요.
- 이전 작업 측정항목에 대해 자세히 알아보세요.