마이그레이션 작업을 만들면 다음이 포함됩니다.
- 마이그레이션 작업의 설정을 정의합니다.
- 소스 데이터베이스에 대해 만든 연결 프로필 (소스 연결 프로필)에 관한 정보를 지정합니다.
- 대상 Cloud SQL 데이터베이스 인스턴스의 설정을 정의하고 인스턴스를 만듭니다.
- 소스 및 대상 데이터베이스 인스턴스 간의 연결을 설정합니다.
- 마이그레이션 작업을 테스트하여 작업에 대해 제공한 연결 정보가 유효한지 확인합니다.
새 대상 인스턴스로의 마이그레이션 작업을 만들려면 다음 단계를 따르세요.
콘솔
마이그레이션 작업의 설정 정의
- Google Cloud 콘솔에서 마이그레이션 작업 페이지로 이동합니다.
- 마이그레이션 작업 만들기를 클릭합니다.
이전 작업 구성 마법사 페이지가 열립니다. 이 마법사에는 각 구성 단계를 안내하는 여러 패널이 포함되어 있습니다.
저장 및 종료를 클릭하면 언제든지 마이그레이션 작업 만들기를 일시중지할 수 있습니다. 이 시점까지 입력한 모든 데이터는 마이그레이션 작업 초안에 저장됩니다. 나중에 초안 마이그레이션 작업을 완료할 수 있습니다.
- 시작하기 페이지에서 다음 정보를 입력합니다.
- 마이그레이션 작업 이름
사람이 읽을 수 있는 마이그레이션 작업 이름입니다. 이 값은 Google Cloud 콘솔에 표시됩니다.
- 마이그레이션 작업 ID
이는 마이그레이션 작업을 기계에서 읽을 수 있는 식별자입니다. 이 값은 Database Migration Service Google Cloud CLI 명령어 또는 API를 사용하여 마이그레이션 작업을 처리하는 데 사용됩니다.
- 소스 데이터베이스 엔진 목록에서 MySQL을 선택합니다.
대상 데이터베이스 엔진 필드는 자동으로 채워지며 변경할 수 없습니다.
- 이전 작업을 저장할 리전을 선택합니다.
Database Migration Service는 완전히 지역화된 제품이므로 마이그레이션과 관련된 모든 항목 (소스 및 대상 연결 프로필, 마이그레이션 작업, 대상 데이터베이스)을 단일 리전에 저장해야 합니다. Compute Engine 인스턴스, App Engine 앱, 기타 서비스와 같이 데이터가 필요한 서비스의 위치에 따라 리전을 선택합니다. 대상 리전을 선택한 후에는 이 선택사항을 변경할 수 없습니다.
- 마이그레이션 작업 이름
- 저장 후 계속을 클릭합니다.
소스 연결 프로필 정보 지정
소스 정의 페이지에서 다음 단계를 수행합니다.
- 소스 연결 프로필 드롭다운 메뉴에서 소스 데이터베이스의 연결 프로필을 선택합니다.
- 전체 덤프 구성 맞춤설정 섹션에서 구성 수정을 클릭합니다.
- 전체 덤프 구성 수정 패널의 전체 덤프 방법 드롭다운 메뉴에서 다음 중 하나를 선택합니다.
- 물리적 기반: Percona XtraBackup 유틸리티를 사용하여 자체 백업 파일을 제공하려면 이 옵션을 선택합니다. 이 접근 방식을 사용하려면 추가 준비 단계가 필요합니다. Percona XtraBackup에서 생성된 실제 백업 파일 사용에 관한 전체 가이드는 Percona XtraBackup 실제 파일을 사용하여 데이터베이스 마이그레이션을 참고하세요.
- 논리 기반:
mysqlshell
유틸리티로 만든 논리적 백업 파일을 사용하려면 이 옵션을 선택합니다. Database Migration Service에서 이 백업 파일을 자동으로 생성하거나 자체 사본을 제공할 수 있습니다.
- 나머지 덤프 설정을 수정합니다. 다음 중 하나를 수행합니다.
- 실제 백업 파일을 사용하는 경우 폴더 제공에서 찾아보기를 클릭한 다음 전체 덤프 파일을 업로드한 폴더를 선택합니다. 저장소 버킷 자체가 아닌 전체 백업 파일이 포함된 전용 폴더를 선택해야 합니다.
논리적 백업 파일을 사용하는 경우 데이터 덤프 동시 로드 또는 덤프 플래그를 구성합니다.
이 섹션을 펼쳐서 전체 논리적 백업 파일 단계를 확인하세요.
덤프 파일을 생성하는 방법 선택 섹션에서 다음 옵션 중 하나를 사용합니다.
초기 덤프 자동 생성 (권장)
Database Migration Service는 마이그레이션 작업이 생성되고 시작된 후 항상 초기 데이터베이스 덤프 파일을 생성하므로 이 옵션을 사용하는 것이 좋습니다.
Database Migration Service는 이 파일을 사용하여 소스 데이터베이스의 원래 객체 정의와 테이블 데이터를 재현하여 이 정보를 대상 Cloud SQL 데이터베이스 인스턴스로 마이그레이션할 수 있도록 합니다.
자동 생성 덤프를 사용하는 경우 데이터 덤프 작업 구성 섹션에서 Database Migration Service가 실행해야 하는 작업 유형을 선택합니다.
- 데이터 덤프 동시 로드: MySQL 버전 5.7 또는 8로 이전할 때 사용할 수 있는 고성능 동시 로드 옵션을 사용합니다.
데이터 병렬 처리 속도는 소스 데이터베이스에 발생하는 부하량과 관련이 있습니다.
- 최적 (권장): 소스 데이터베이스의 최적 부하로 균형 잡힌 성능을 제공합니다.
- 최대: 가장 빠른 덤프 속도를 제공하지만 소스 데이터베이스의 부하가 증가할 수 있습니다.
- 최소: 소스 데이터베이스에서 가장 적은 양의 컴퓨팅 리소스를 사용하지만 덤프 처리량이 느릴 수 있습니다.
- 덤프 플래그: 이 옵션은 데이터 덤프 동시 로드와 함께 사용할 수 없습니다.
이 설정을 사용하여 덤프 파일을 만드는 데 사용되는
mysqldump
유틸리티의 플래그를 직접 구성합니다.플래그를 추가하려면 다음 단계를 따르세요.
- 플래그 추가를 클릭합니다.
다음 플래그 중 하나를 선택합니다.
add-locks:
이 플래그는 덤프 파일에 포함된 각 테이블을LOCK TABLES
및UNLOCK TABLES
문이 포함된 괄호로 묶습니다. 이렇게 하면 덤프 파일이 대상 인스턴스에 로드될 때 삽입 속도가 빨라집니다.ignore-error:
이 플래그를 사용하여 쉼표로 구분된 오류 번호 목록을 입력합니다. 이 숫자는mysqldump
유틸리티에서 무시하는 오류를 나타냅니다.max-allowed-packet:
이 플래그를 사용하여 MySQL 클라이언트와 소스 MySQL 데이터베이스 간의 통신을 위한 버퍼의 최대 크기를 설정합니다. 버퍼의 기본 크기는 24MB이며 최대 크기는 1GB입니다.
- 완료를 클릭합니다.
- 추가하려는 플래그마다 이 단계를 반복합니다.
신고를 삭제하려면 신고가 포함된 행 오른쪽에 있는 휴지통 아이콘을 클릭합니다.
- 데이터 덤프 동시 로드: MySQL 버전 5.7 또는 8로 이전할 때 사용할 수 있는 고성능 동시 로드 옵션을 사용합니다.
직접 제공
기본적으로 Database Migration Service는 마이그레이션 작업 실행의 일환으로 초기 덤프를 실행하므로 이 옵션은 권장되지 않습니다.
자체 덤프 파일을 사용하려면 자체 제공을 선택하고 찾아보기를 클릭한 다음 파일 (또는 여러 파일을 사용하는 경우 전체 Cloud Storage 폴더)을 선택하고 선택을 클릭합니다.
덤프가 지난 24시간 이내에 생성되었으며 덤프 요구사항을 준수하는지 확인합니다.
- 저장 후 계속을 클릭합니다.
대상 Cloud SQL 인스턴스 구성 및 만들기
- 대상 정의 페이지의 대상 인스턴스 유형 드롭다운 메뉴에서 새 인스턴스를 선택합니다. 관련 설정을 모두 정의합니다.
- 대상 인스턴스 ID 필드에 Cloud SQL 인스턴스의 식별자를 입력하거나 자동 생성된 식별자를 사용합니다.
식별자에 민감한 정보나 개인 식별 정보를 포함하지 마세요. 인스턴스 이름에 프로젝트 ID를 포함하지 않아도 됩니다. 필요한 경우 자동으로 포함됩니다(예: 로그 파일에서).
- 비밀번호 필드에 대상 Cloud SQL 인스턴스의 영숫자 비밀번호를 입력합니다. 이는 인스턴스의
root
관리자 계정 비밀번호입니다.비밀번호를 직접 입력하거나 생성을 클릭하여 데이터베이스 이전 서비스에서 자동으로 비밀번호를 만들도록 할 수 있습니다.
- 데이터베이스 버전 드롭다운 메뉴에서 대상 인스턴스의 데이터베이스 버전을 선택합니다.
마이너 버전 표시를 클릭하여 모든 마이너 버전을 확인합니다. 교차 버전 이전 지원에 대해 자세히 알아보세요.
- 대상 인스턴스의 MySQL용 Cloud SQL 버전을 선택합니다.
MySQL용 Cloud SQL Enterprise 버전과 MySQL용 Cloud SQL Enterprise Plus 버전의 두 가지 옵션이 있습니다.
MySQL용 Cloud SQL 버전에는 다양한 기능, 사용 가능한 머신 유형, 가격이 있습니다. Cloud SQL 문서를 참고하여 요구사항에 적합한 버전을 선택하세요. 자세한 내용은 MySQL용 Cloud SQL 버전 소개를 참고하세요.
- 리전 메뉴에는 시작하기 페이지에서 선택한 것과 동일한 리전이 표시됩니다.
인스턴스를 고가용성으로 구성하는 경우 여러 영역 (고가용성)을 선택합니다. 기본 영역과 보조 영역을 모두 선택할 수 있습니다. 인스턴스를 만드는 동안 보조 영역이 사용되면 다음 조건이 적용됩니다.
- 기본 영역은 Any로 보조 영역은 Any (different from primary)로 기본 설정됩니다.
- 기본 영역과 보조 영역을 모두 지정할 경우 서로 다른 영역이어야 합니다.
- 연결 섹션에서 대상 인스턴스에 공개 IP 주소를 추가할지 아니면 비공개 IP 주소를 추가할지 선택합니다.
두 유형의 IP 주소를 모두 포함하도록 인스턴스를 구성할 수 있지만 이전에는 하나 이상의 유형이 필요합니다.
다음 중 하나를 선택합니다.
- VPC 피어링 또는 역방향 SSH 터널을 사용하여 마이그레이션하려면
비공개 IP를 선택합니다.
비공개 IP 연결을 사용 설정하려면 모든 추가 네트워킹 요구사항을 충족해야 합니다.
전체 비공개 IP 요구사항을 확인하려면 이 섹션을 펼치세요.
- Service Networking API가 사용 설정되어 있습니다. Google Cloud 콘솔을 사용하여 Service Networking API를 사용 설정할 수 있습니다.
-
servicenetworking.services.addPeering
IAM 권한이 있습니다. - 프로젝트에
비공개 서비스 액세스를 구성했으며, 이 경우
compute.networkAdmin
IAM 역할이 필요합니다. - 프로젝트에 이전 네트워크가 아닌 VPC 네트워크 또는 공유 VPC 네트워크가 하나 이상 있습니다.
-
공유 VPC 네트워크를 사용하는 경우 다음 작업도 수행해야 합니다.
- 호스트 프로젝트에 Service Networking API를 사용 설정합니다.
- 호스트 프로젝트에 사용자를 추가합니다.
- 사용자에게 호스트 프로젝트의 compute.networkAdmin IAM 역할을 부여합니다.
- 피어링할 연결된 VPC 네트워크를 선택합니다. VPC 피어링을 사용하여 마이그레이션 소스에 연결하려는 경우 인스턴스가 있는 VPC를 선택합니다.
- 선택한 VPC에 관리 서비스 네트워크가 구성된 적이 없는 경우 IP 범위를 선택하고 연결을 클릭하거나 자동으로 선택된 IP 범위를 사용하고 할당 및 연결을 클릭할 수 있습니다.
- IP 허용 목록을 사용하여 인터넷을 통해 이전하려면
공개 IP를 선택합니다.
원하는 경우 공개 IP에서 승인된 네트워크 필드를 클릭하고 Cloud SQL 인스턴스에 연결할 네트워크 또는 프록시를 승인합니다. 네트워크는 제공한 주소로만 승인됩니다. Cloud SQL 문서의 공개 IP 구성을 참고하세요.
나중에 마이그레이션 작업 연결을 구성합니다. 사용 가능한 네트워킹 방법에 대해 자세히 알아보려면 연결 구성을 참고하세요.
- VPC 피어링 또는 역방향 SSH 터널을 사용하여 마이그레이션하려면
비공개 IP를 선택합니다.
- 대상 인스턴스 ID 필드에 Cloud SQL 인스턴스의 식별자를 입력하거나 자동 생성된 식별자를 사용합니다.
- Cloud SQL 인스턴스의 머신 유형을 선택합니다. 디스크 크기는 소스 데이터베이스 크기 이상이어야 합니다. MySQL 머신 유형에 대해 자세히 알아보세요.
- MySQL용 Cloud SQL Enterprise Plus 버전: 대상 데이터베이스에서 데이터 캐시 기능을 사용하려면 데이터 캐시 사용 설정 체크박스를 선택합니다.
데이터 캐시는 MySQL용 Cloud SQL Enterprise Plus 버전 인스턴스에서 사용할 수 있는 선택적 기능으로, 대상 데이터베이스에 고속 로컬 솔리드 스테이트 드라이브를 추가합니다. 이 기능을 사용하면 Cloud SQL에 추가 비용이 발생할 수 있습니다. 데이터 캐시에 대한 자세한 내용은 Cloud SQL 문서의 데이터 캐시 개요를 참고하세요.
- Cloud SQL 인스턴스의 스토리지 유형을 지정합니다. 솔리드 스테이트 드라이브 (SSD) 또는 하드 디스크 드라이브 (HDD) 중 하나를 선택할 수 있습니다.
- Cloud SQL 인스턴스의 스토리지 용량 (GB)을 지정합니다.
인스턴스에 소스 데이터베이스의 데이터를 처리할 수 있는 충분한 스토리지 용량이 있는지 확인합니다. 이 용량은 언제든지 늘릴 수 있지만 줄일 수는 없습니다.
(선택사항) 대상 인스턴스의 데이터 암호화 옵션 또는 리소스 라벨을 구성합니다.
이 섹션을 펼쳐 선택 단계를 확인하세요.
선택적 구성 표시를 클릭한 다음 다음을 수행합니다.
소스에서 대상으로 이전되는 데이터의 암호화를 관리할지 지정합니다. 기본적으로 데이터는 Google Cloud에서 관리하는 키로 암호화됩니다. 암호화를 직접 관리하려면 고객 관리 암호화 키 (CMEK)를 사용하면 됩니다. 방법은 다음과 같습니다.
- 고객 관리 암호화 키 (CMEK) 사용 체크박스를 선택합니다.
- 고객 관리 키 선택 메뉴에서 CMEK를 선택합니다.
키가 표시되지 않으면 키 리소스 이름 입력을 클릭하여 사용할 키의 리소스 이름을 입력합니다. 키 리소스 이름의 예:
projects/my-project-name/locations/my-location/keyRings/my-keyring/cryptoKeys/my-key
.- 데이터베이스 서버에 적용할 필수 플래그를 추가합니다. 가능하면 생성된 대상 Cloud SQL 인스턴스의 데이터베이스 플래그가 소스 데이터베이스의 데이터베이스 플래그와 동일한지 확인합니다. MySQL에서 지원되는 데이터베이스 플래그에 대해 자세히 알아보세요.
- Cloud SQL 인스턴스와 관련된
라벨을 추가합니다.
라벨은 인스턴스를 정리하는 데 도움이 됩니다. 예를 들어 비용 센터 또는 환경을 기준으로 라벨을 정리할 수 있습니다. 청구서에도 라벨이 포함되므로 라벨별 비용 분포를 확인할 수 있습니다.
- 대상 만들기 및 계속을 클릭합니다. 이제 Database Migration Service에서 Cloud SQL 대상 인스턴스를 만들고 있습니다. 이 프로세스는 몇 분이 소요될 수 있습니다.
소스 및 대상 데이터베이스 인스턴스 간의 연결 설정
연결 방법 드롭다운 메뉴에서 네트워크 연결 방법을 선택합니다. 이 메서드는 새로 생성된 Cloud SQL 인스턴스가 소스 데이터베이스에 연결되는 방식을 정의합니다. 현재 네트워크 연결 방법에는 IP 허용 목록, 역방향 SSH 터널, VPC 피어링이 있습니다.
다음을 사용하려면 | 수행할 작업 |
---|---|
IP 허용 목록 네트워크 연결 방법 | 대상 인스턴스의 발신 IP 주소를 지정해야 합니다. 만든 Cloud SQL 인스턴스가 고가용성 인스턴스인 경우 기본 인스턴스와 보조 인스턴스의 발신 IP 주소를 모두 포함합니다. |
역방향 SSH 터널 네트워크 연결 메서드 | 터널을 호스팅할 Compute Engine VM 인스턴스를 선택해야 합니다.
인스턴스를 지정하면 소스 데이터베이스와 대상 데이터베이스 간의 터널을 설정하는 단계를 실행하는 스크립트가 제공됩니다. Google Cloud CLI에서 스크립트를 실행해야 합니다. 소스 데이터베이스와 Google Cloud에 모두 연결된 머신에서 명령어를 실행합니다. |
VPC 피어링 네트워크 연결 방법 | 소스 데이터베이스가 있는 VPC 네트워크를 선택해야 합니다. Cloud SQL 인스턴스가 이 네트워크에 연결되도록 업데이트됩니다. |
네트워크 연결을 선택하고 구성한 후 구성 및 계속을 클릭합니다.
마이그레이션 작업 테스트, 만들기, 실행
이 마지막 단계에서는 마이그레이션 작업 설정, 소스, 대상, 연결 방법의 요약을 검토한 다음 마이그레이션 작업 설정의 유효성을 테스트합니다. 문제가 발생하면 이전 작업의 설정을 수정할 수 있습니다. 일부 설정은 수정할 수 없습니다.
-
마이그레이션 작업 테스트 및 만들기 페이지에서 작업 테스트를 클릭합니다.
테스트에 실패하면 흐름의 적절한 부분에서 문제를 해결한 후 다시 테스트할 수 있습니다. 실패한 이전 작업 테스트를 해결하는 방법에 관한 자세한 내용은 MySQL 문제 진단을 참고하세요.
-
마이그레이션 작업 테스트가 완료되면 작업 만들기 및 시작을 클릭하여 마이그레이션 작업을 만들고 즉시 시작하거나 작업 만들기를 클릭하여 마이그레이션 작업을 만들고 즉시 시작하지 않습니다.
작업이 생성될 때 시작되지 않은 경우 시작을 클릭하여 마이그레이션 작업 페이지에서 시작할 수 있습니다. 마이그레이션 작업이 시작된 시점과 관계없이 조직은 대상 인스턴스의 존재에 대해 비용을 청구받습니다.
이전이 진행 중입니다. 마이그레이션 작업을 시작하면 Database Migration Service에서 전체 덤프를 시작하여 소스 데이터베이스를 잠시 잠급니다. 소스가 Amazon RDS 또는 Amazon Aurora에 있는 경우 데이터베이스 마이그레이션 서비스는 마이그레이션 시작 시 짧은 (약 1분 미만) 쓰기 다운타임도 필요합니다. 자세한 내용은 알려진 제한사항을 참고하세요.
- 마이그레이션 작업 검토로 진행합니다.
gcloud
대상 연결 프로필을 만듭니다.
Google Cloud CLI를 사용하여 새 대상 인스턴스로 이전하면 단일 작업으로 대상 인스턴스와 연결 프로필이 생성됩니다.
다음 명령어를 실행합니다 (링크를 클릭하여 펼치기).gcloud database-migration connection-profiles create cloudsql
이 샘플에서는 모든 작업이 동기식으로 실행되도록 선택적
--no-async
플래그를 사용합니다. 따라서 일부 명령어는 완료하는 데 다소 시간이 걸릴 수 있습니다.--no-async
플래그를 건너뛰어 명령어를 비동기식으로 실행할 수 있습니다. 이 경우gcloud database-migration operations describe
명령어를 사용하여 작업이 성공했는지 확인해야 합니다.아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- CONNECTION_PROFILE_ID: 연결 프로필의 기계가 읽을 수 있는 식별자
- 대상 인스턴스에서 사용할 MySQL 버전을 포함하는 DATABASE_VERSION. 데이터베이스 버전은 메이저 버전과 마이너 버전이 모두 포함된 문자열로 지정됩니다. 예를 들면
MYSQL_8_0
,MYSQL_8_0_32
,MYSQL_8_0_36
입니다.가능한 모든 MySQL 버전은 --database-version 플래그 참조를 참고하세요.
- (선택사항) EDITION 기본적으로 Google Cloud CLI로 만드는 새 인스턴스는 MySQL용 Cloud SQL Enterprise Plus 버전을 사용합니다. MySQL용 Cloud SQL Enterprise Plus 버전을 사용하려면 해당 버전이 지원되는 리전인지 확인하세요. MySQL용 Cloud SQL Enterprise Plus 버전 리전 지원을 참고하세요.
다음 값 중 하나와 함께
--edition
플래그를 사용하여 버전을 변경할 수 있습니다.- MySQL용 Cloud SQL Enterprise Plus 버전의 경우
enterprise-plus
- MySQL용 Cloud SQL Enterprise 버전의 경우
enterprise
- MySQL용 Cloud SQL Enterprise Plus 버전의 경우
-
TIER을 사용할 Cloud SQL 머신 유형의 이름으로 바꿉니다.
머신 유형은 Cloud SQL 규칙을 따르는 문자열(예:
db-n1-standard-1
,db-perf-optimized-N-2
)로 지정됩니다. Google Cloud CLI와 함께 사용할 수 있는 머신 유형 및 식별자의 전체 목록은 MySQL용 Cloud SQL 문서의 머신 유형을 참고하세요.Google Cloud CLI로 만든 인스턴스는 기본적으로 다양한 머신 유형을 사용할 수 있는 MySQL용 Cloud SQL Enterprise Plus 버전을 사용합니다. MySQL용 Cloud SQL Enterprise 버전에서만 사용할 수 있는 머신 유형을 사용하려면 선택적
--edition=enterprise
플래그를 사용하여 버전을 지정합니다. - REGION을 연결 프로필을 저장하려는 리전의 식별자로 바꿉니다.
기본적으로 Google Cloud CLI로 만드는 새 인스턴스는 MySQL용 Cloud SQL Enterprise Plus 버전을 사용합니다. MySQL용 Cloud SQL Enterprise Plus 버전을 사용하려면 해당 버전이 지원되는 리전인지 확인하세요. MySQL용 Cloud SQL Enterprise Plus 버전 리전 지원을 참고하세요. 선택적
--edition
플래그를 사용하여 버전을 변경할 수 있습니다. - (선택사항) CONNECTION_PROFILE_NAME: 연결 프로필의 사람이 읽을 수 있는 이름입니다. 이 값은 Google Cloud 콘솔에 표시됩니다.
- 네트워킹 구성
기본적으로 Google Cloud CLI로 만드는 새 인스턴스에는 공개 IP 주소가 할당되고 공개 IP 연결을 사용하도록 구성됩니다. 다른 연결 방법을 사용할 수 있습니다. 자세한 내용은 연결 구성을 참고하세요.
공개 IP 연결을 사용하려면 추가 플래그를 사용할 필요가 없습니다. VPC 네트워크 피어링 또는 역방향 SSH 터널과 함께 비공개 IP 연결을 사용하려면 비공개 IP 연결을 사용 설정하기 위한 다음과 같은 추가 네트워크 요구사항을 충족하고 명령어에 추가 플래그를 포함해야 합니다.
전체 비공개 IP 요구사항을 확인하려면 이 섹션을 펼치세요.
- Service Networking API가 사용 설정되어 있습니다. Google Cloud 콘솔을 사용하여 Service Networking API를 사용 설정할 수 있습니다.
-
servicenetworking.services.addPeering
IAM 권한이 있습니다. - 프로젝트에
비공개 서비스 액세스를 구성했으며, 이 경우
compute.networkAdmin
IAM 역할이 필요합니다. - 프로젝트에 이전 네트워크가 아닌 VPC 네트워크 또는 공유 VPC 네트워크가 하나 이상 있습니다.
-
공유 VPC 네트워크를 사용하는 경우 다음 작업도 수행해야 합니다.
- 호스트 프로젝트에 Service Networking API를 사용 설정합니다.
- 호스트 프로젝트에 사용자를 추가합니다.
- 사용자에게 호스트 프로젝트의 compute.networkAdmin IAM 역할을 부여합니다.
비공개 IP 연결(VPC 네트워크 피어링 사용 또는 Compute Engine VM의 역방향 SSH 터널 사용)을 사용하려면 다음 플래그를 추가로 포함합니다.
-
--no-enable-ip-v4
: (선택사항) 대상 인스턴스에 공개 IP 주소를 할당하지 않습니다. 대상 인스턴스에 공개 IP 주소와 비공개 IP 주소를 모두 할당할 수 있지만 비공개 IP 연결을 사용하는 경우 공개 IP 주소가 필요하지 않을 수 있습니다. -
--private-network
: 대상 인스턴스에 비공개 IP 주소를 할당하려면 비공개 IP 주소를 할당할 Virtual Private Cloud의 이름을 지정합니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud database-migration connection-profiles \ create mysql CONNECTION_PROFILE_ID \ --no-async \ --region=REGION \ --database-version=DATABASE_VERSION \ --tier=TIER \ --display-name=CONNECTION_PROFILE_NAME
Windows(PowerShell)
gcloud database-migration connection-profiles ` create mysql CONNECTION_PROFILE_ID ` --no-async ` --region=REGION ` --database-version=DATABASE_VERSION ` --tier=TIER ` --display-name=CONNECTION_PROFILE_NAME
Windows(cmd.exe)
gcloud database-migration connection-profiles ^ create mysql CONNECTION_PROFILE_ID ^ --no-async ^ --region=REGION ^ --database-version=DATABASE_VERSION ^ --tier=TIER ^ --display-name=CONNECTION_PROFILE_NAME
다음과 비슷한 응답이 표시됩니다.
Waiting for connection profile [CONNECTION_PROFILE_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created connection profile CONNECTION_PROFILE_ID [OPERATION_ID]
마이그레이션 작업을 만듭니다.
VPC 피어링 또는 역방향 SSH 터널 연결을 사용하는 경우--peer-vpc
,--vm
,--vm-ip
,--vm-port
,--vpc
와 같은 필수 플래그를 추가해야 합니다. 자세한 내용은 연결 구성 및 Google Cloud CLI 예시를 참고하세요.
다음 명령어를 실행합니다 (링크를 클릭하여 펼치기).gcloud database-migration migration-jobs create
이 샘플에서는 모든 작업이 동기식으로 실행되도록 선택적
--no-async
플래그를 사용합니다. 따라서 일부 명령어는 완료하는 데 다소 시간이 걸릴 수 있습니다.--no-async
플래그를 건너뛰어 명령어를 비동기식으로 실행할 수 있습니다. 이 경우gcloud database-migration operations describe
명령어를 사용하여 작업이 성공했는지 확인해야 합니다.아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- MIGRATION_JOB_ID을 마이그레이션 작업의 머신 판독 식별자로 바꿉니다. 이 값은 Database Migration Service Google Cloud CLI 명령어 또는 API를 사용하여 마이그레이션 작업을 처리하는 데 사용됩니다.
- REGION를 이전 작업을 저장할 리전 식별자로 바꿉니다.
- MIGRATION_JOB_NAME을 인간이 읽을 수 있는 이전 작업 이름으로 바꿉니다. 이 값은 Google Cloud 콘솔의 Database Migration Service에 표시됩니다.
- SOURCE_CONNECTION_PROFILE_ID를 소스 연결 프로필의 기계 판독식 식별자로 바꿉니다.
- DESTINATION_CONNECTION_PROFILE_ID을 대상 연결 프로필의 기계 판독식 식별자로 바꿉니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud database-migration migration-jobs \ create MIGRATION_JOB_ID \ --no-async \ --region=REGION \ --display-name=MIGRATION_JOB_NAME \ --source=SOURCE_CONNECTION_PROFILE_ID \ --destination=DESTINATION_CONNECTION_PROFILE_ID \ --type=MIGRATION_JOB_TYPE
Windows(PowerShell)
gcloud database-migration migration-jobs ` create MIGRATION_JOB_ID ` --no-async ` --region=REGION ` --display-name=MIGRATION_JOB_NAME ` --source=SOURCE_CONNECTION_PROFILE_ID ` --destination=DESTINATION_CONNECTION_PROFILE_ID ` --type=MIGRATION_JOB_TYPE
Windows(cmd.exe)
gcloud database-migration migration-jobs ^ create MIGRATION_JOB_ID ^ --no-async ^ --region=REGION ^ --display-name=MIGRATION_JOB_NAME ^ --source=SOURCE_CONNECTION_PROFILE_ID ^ --destination=DESTINATION_CONNECTION_PROFILE_ID ^ --type=MIGRATION_JOB_TYPE
다음과 비슷한 응답이 표시됩니다.
Waiting for migration job [MIGRATION_JOB_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created migration job MIGRATION_JOB_ID [OPERATION_ID]