XtraBackup 물리적 파일에서 Cloud SQL로 마이그레이션

이 페이지에서는 MySQL용 Percona XtraBackup 물리적 파일을 사용하여 외부 서버에서 Cloud SQL로 MySQL 데이터베이스를 마이그레이션하는 방법을 설명합니다.

Cloud SQL은 Percona XtraBackup을 사용하여 외부 서버의 MySQL 데이터베이스를 MySQL용 Cloud SQL 인스턴스로 마이그레이션하는 과정을 지원합니다. XtraBackup 유틸리티를 사용하여 물리적 파일을 생성한 다음 Cloud Storage에 업로드합니다. 물리적 파일을 사용하면 일반적인 논리적 덤프 파일 기반 마이그레이션보다 전체 마이그레이션 속도를 최대 10배까지 향상시킬 수 있습니다.

Cloud SQL은 MySQL 5.7 및 8.0에서 물리적 파일 기반 마이그레이션을 지원합니다. MySQL 5.6은 지원되지 않습니다. Amazon RDS 데이터베이스의 Amazon Aurora 또는 MySQL에서 마이그레이션할 수 없습니다. 또한 MySQL용 Cloud SQL의 대상 복제본 인스턴스가 외부 서버와 동일한 MySQL 주 버전으로 설치되어 있어야 합니다. 그러나 대상 복제본에서 해당 버전 이후의 부 버전을 사용할 수 있습니다. 예를 들어 외부 데이터베이스가 MySQL 8.0.31을 사용하는 경우 대상 복제본은 MySQL용 Cloud SQL 버전 8.0.31 이상이어야 합니다.

이 문서의 절차에서는 MySQL용 Cloud SQL Admin API를 사용합니다. Database Migration Service를 사용하여 이 마이그레이션을 수행할 수도 있습니다. Database Migration Service 사용에 대한 자세한 내용은 Percona XtraBackup 물리적 파일을 사용하여 데이터베이스 마이그레이션을 참조하세요.

시작하기 전에

이 섹션에서는 MySQL 데이터베이스를 Google Cloud로 마이그레이션하기 전에 수행해야 할 단계를 설명합니다.

Google Cloud 프로젝트 설정

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Cloud SQL Admin API 사용 설정

    API 사용 설정

  5. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  6. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  7. Cloud SQL Admin API 사용 설정

    API 사용 설정

  8. 사용자 계정에 Cloud SQL 관리자, 스토리지 관리자, Compute 뷰어 역할이 있는지 확인합니다.

    IAM 페이지로 이동

Cloud Storage 버킷 설정

아직 Cloud Storage 버킷을 만들지 않았으면 지금 만듭니다.

Google Cloud SDK 설치

외부 서버에서 gcloud CLI 명령어를 사용하려면 Google Cloud SDK를 설치합니다.

마이그레이션할 외부 서버 준비

  1. 외부 서버에 다음 버전의 XtraBackup 유틸리티 중 하나를 설치합니다.

    MySQL 8.0의 경우 소스 서버 버전과 같거나 그 이상의 XtraBackup 버전을 설치해야 합니다. 자세한 내용은 Percona XtraBackup 문서의 서버 버전 및 백업 버전 비교를 참조하세요.

  2. 외부 서버가 복제에 필요한 모든 요구사항을 충족하는지 확인합니다. 자세한 내용은 복제를 위한 외부 서버 설정을 참조하세요.

    복제를 위한 외부 서버 요구사항 외에도 XtraBackup 물리적 파일에서 마이그레이션할 때는 다음과 같은 요구사항이 있습니다.

    • MySQL 데이터베이스는 온프레미스 데이터베이스 또는 Compute Engine VM의 자체 관리형 MySQL 데이터베이스여야 합니다. Amazon RDS 데이터베이스의 Amazon Aurora 또는 MySQL에서 마이그레이션할 수 없습니다.
    • 기본 데이터 파일 이름 ibdata1을 사용하는 데이터 파일 한 개로만 innodb_data_file_path 매개변수를 구성해야 합니다. 데이터베이스가 2개의 데이터 파일로 구성되었거나 이름이 다른 데이터 파일이 있는 경우 XtraBackup 물리적 파일을 사용하여 데이터베이스를 마이그레이션할 수 없습니다. 예를 들어 innodb_data_file_path=ibdata01:50M:autoextend로 구성된 데이터베이스는 마이그레이션에 지원되지 않습니다.
    • 소스 외부 데이터베이스의 innodb_page_size 매개변수는 기본값 16384로 구성되어야 합니다.
  3. 아직 설정하지 않은 경우 복제 사용자 계정을 만듭니다. 이 사용자 계정의 사용자 이름과 비밀번호가 필요합니다.

마이그레이션 수행

다음 섹션의 모든 단계를 완료하여 외부 MySQL 데이터베이스를 Cloud SQL로 마이그레이션합니다.

XtraBackup 물리적 파일 만들기 및 준비

  1. 외부 서버에서 XtraBackup을 사용하여 소스 데이터베이스의 전체 백업을 수행합니다. 전체 백업을 수행하는 방법에 대한 자세한 내용은 Percona XtraBackup 문서의 전체 백업 만들기를 참조하세요.

    증분 및 부분 백업과 같은 다른 유형의 백업은 지원되지 않습니다.

    예를 들면 다음과 같습니다.

    sudo xtrabackup --backup \
    --target-dir=XTRABACKUP_PATH \
    --user=USERNAME \
    --password=PASSWORD
    

    다음 변수를 바꿉니다.

    • XTRABACKUP_PATH: 출력 백업 파일의 위치
    • USERNAME: 소스 데이터베이스에 대한 BACKUP_ADMIN 권한이 있는 사용자
    • PASSWORD: 사용자의 비밀번호
  2. XtraBackup 유틸리티를 사용하여 백업 파일을 준비합니다. 파일이 일관된 상태여야 합니다. 전체 백업 준비에 대한 자세한 내용은 전체 백업 준비를 참조하세요. 예를 들면 다음과 같습니다.

    sudo xtrabackup --prepare --target-dir=XTRABACKUP_PATH
    

    XTRABACKUP_PATH를 출력 백업 파일의 위치로 바꿉니다. 데이터베이스 크기에 따라 이 명령어를 완료하는 데 몇 분 정도 걸릴 수 있습니다.

XtraBackup 물리적 파일을 Cloud Storage에 업로드

gsutil 유틸리티를 사용하여 백업 파일을 Cloud Storage에 업로드합니다.

  time gsutil -m rsync -r XTRABACKUP_PATH CLOUD_STORAGE_BUCKET
  

XTRABACKUP_PATH를 출력 백업 파일의 위치로 바꾸고 CLOUD_STORAGE_BUCKET을 Cloud Storage 버킷 경로로 바꿉니다.

XtraBackup 파일의 크기에는 제한이 없습니다. 하지만 Cloud Storage 버킷에 업로드할 수 있는 각 단일 파일의 크기는 5TB로 제한됩니다.

소스 표현 인스턴스 정의

  1. 외부 서버의 소스 표현 인스턴스를 정의하는 source.json 파일을 만듭니다. 소스 표현 인스턴스는 Cloud SQL의 외부 서버에 대한 메타데이터를 제공합니다.

    source.json 파일에서 외부 서버에 대한 다음 기본 정보를 제공합니다.

    {
    "name": "SOURCE_NAME",
     "region": "REGION",
     "databaseVersion": "DATABASE_VERSION",
     "onPremisesConfiguration": {
        "hostPort": "SOURCE_HOST:3306",
        "username": "REPLICATION_USER_NAME",
        "password": "REPLICATION_USER_PASSWORD",
        "dumpFilePath": "CLOUD_STORAGE_BUCKET"
        "caCertificate": "SOURCE_CERT",
        "clientCertificate": "CLIENT_CERT",
        "clientKey": "CLIENT_KEY"
      }
    }
    
    속성 설명
    SOURCE_NAME 생성할 소스 표현 인스턴스의 이름입니다.
    REGION 소스 표현 인스턴스를 배치할 리전입니다. 대상 Cloud SQL 복제본 인스턴스를 만들 리전과 동일한 리전을 지정합니다.
    DATABASE_VERSION 외부 서버에서 실행되는 데이터베이스 버전입니다. 지원되는 유일한 옵션은 MYSQL_5_7 또는 MYSQL_8_0입니다.
    SOURCE_HOST 외부 서버의 IPv4 주소 및 포트 또는 외부 서버의 DNS 주소입니다. DNS 주소를 사용하는 경우 최대 60자까지 포함할 수 있습니다.
    USERNAME 외부 서버의 복제 사용자 계정입니다.
    PASSWORD 복제 사용자 계정의 비밀번호입니다.
    CLOUD_STORAGE_BUCKET XtraBackup 물리적 파일이 포함된 Cloud Storage 버킷의 이름입니다.
    CLIENT_CA_CERT 외부 서버의 CA 인증서입니다. 외부 서버에서 SSL/TLS가 사용되는 경우에만 포함합니다.
    CLIENT_CERT 외부 서버의 클라이언트 인증서입니다. 서버-클라이언트 인증에만 필요합니다. 외부 서버에서 SSL/TLS가 사용되는 경우에만 포함합니다.
    CLIENT_KEY 외부 서버에 있는 클라이언트 인증서의 비공개 키 파일입니다. 서버-클라이언트 인증에만 필요합니다. 외부 서버에서 SSL/TLS가 사용되는 경우에만 포함합니다.
  2. 다음 curl 명령어로 Cloud SQL Admin API에 요청하여 소스 표현 인스턴스를 만듭니다. 요청 데이터에 만든 source.json 파일을 제공합니다.

    gcloud auth login
    ACCESS_TOKEN="$(gcloud auth print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
        --header 'Content-Type: application/json' \
        --data @./source.json \
        -X POST \
    https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
    
    속성 설명
    PROJECT_ID Google Cloud의 프로젝트 ID입니다.

대상 복제본 인스턴스 식별

Cloud SQL에서 마이그레이션할 대상 복제본을 식별하는 파일을 만듭니다. 복제본을 만들어 새 인스턴스로 데이터를 마이그레이션하거나 복제본을 강등하여 기존 Cloud SQL 인스턴스를 사용할 수 있습니다.

옵션 1: 복제본 인스턴스 만들기

  1. 복제본 인스턴스를 만들려면 다음 예시 replica.json 파일을 사용합니다.

    {
    "name": "REPLICA_NAME",
    "region": "REGION",
    "databaseVersion": "DB_VERSION",
    "settings": {
       "tier": "INSTANCE_TIER",
       "dataDiskSizeGb": "DISK_SIZE_GB",
       "edition": "EDITION_NAME"
    },
    "masterInstanceName": "SOURCE_NAME"
    }
    
    속성 설명
    REPLICA_NAME 만들 Cloud SQL 복제본의 이름입니다.
    REGION 소스 표현 인스턴스에 할당한 리전과 동일한 리전을 지정합니다.
    DATABASE_VERSION Cloud SQL 복제본에서 사용할 데이터베이스 버전입니다. 이 버전의 옵션은 MYSQL_5_7 또는 MYSQL_8_0입니다. 이 데이터베이스 주 버전은 외부 서버에 지정한 데이터베이스 버전과 일치해야 합니다. 부 버전을 지정할 수도 있지만 부 버전은 외부 서버에 설치된 버전과 같거나 이후 버전이어야 합니다. MySQL에 사용 가능한 문자열 목록은 SqlDatabaseVersion을 참조하세요.
    INSTANCE_TIER 복제본 인스턴스를 호스팅할 머신 유형입니다. 인스턴스 버전과 일치하는 머신 유형을 지정해야 합니다. 예를 들어 edition 필드에 ENTERPRISE_PLUS를 지정하면 db-perf-Optimized 머신 유형을 지정해야 합니다. 지원되는 머신 유형 목록은 머신 유형을 참조하세요.
    DISK_SIZE_GB Cloud SQL 복제본의 스토리지 크기(GB)입니다.
    EDITION_NAME 복제본에 사용할 Cloud SQL 버전입니다. 가능한 값은 ENTERPRISE_PLUS(MySQL 8.0만 해당) 또는 ENTERPRISE입니다.
    SOURCE_NAME 소스 표현 인스턴스에 할당한 이름입니다.
  2. 다음 curl 명령어로 Cloud SQL Admin API에 요청을 수행하여 대상 복제본 인스턴스를 만듭니다. 요청 데이터에 만든 JSON 파일을 제공합니다.

    gcloud auth login
    ACCESS_TOKEN="$(gcloud auth print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
        --header 'Content-Type: application/json' \
        --data @./replica.json \
        -X POST \
    https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
    
    속성 설명
    PROJECT_ID Google Cloud의 프로젝트 ID입니다.

옵션 2: 기존 복제본 인스턴스 사용

  1. 기존 복제본 인스턴스의 여유 디스크 공간이 Cloud Storage 버킷에 업로드한 물리적 파일과 최소한 동일한지 확인합니다. 인스턴스에는 Cloud Storage에서 동일한 데이터 양을 다운로드하기에 충분한 디스크 공간이 있어야 합니다.

  2. 기존 복제본 인스턴스를 사용하려면 다음 예시 replica.json 파일을 사용합니다.

    {
    "demoteContext": {
        "sourceRepresentativeInstanceName": "SOURCE_NAME"
      }
    }
    
    속성 설명
    SOURCE_NAME 소스 표현 인스턴스에 할당한 이름입니다.
  3. 다음 curl 명령어로 Cloud SQL Admin API 강등 요청을 수행하여 기존 대상 복제본 인스턴스를 강등합니다. 요청 데이터에 만든 JSON 파일을 제공합니다.

    gcloud auth login
    ACCESS_TOKEN="$(gcloud auth print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
        --header 'Content-Type: application/json' \
        --data @./replica.json \
        -X POST \
    https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/EXISTING_INSTANCE_ID/demote
    
    속성 설명
    PROJECT_ID Google Cloud의 프로젝트 ID입니다.
    EXISTING_INSTANCE_ID 마이그레이션에 사용할 기존 복제본 인스턴스의 ID입니다.

마이그레이션 설정 확인

다음 명령어를 실행하여 인스턴스가 마이그레이션에 올바르게 설정되었는지 확인합니다.

gcloud auth login
ACCESS_TOKEN="$(gcloud auth print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
     --data '{
             "syncMode": "SYNC_MODE",
             "skipVerification": false,
             "migrationType": "PHYSICAL"
               }' \
     -X POST \
https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_NAME/verifyExternalSyncSettings
속성 설명
SYNC_MODE 마이그레이션을 일회성 프로세스로 구성하려면 offline을 지정합니다. 외부 서버에서의 지속적 복제를 설정하려면 online을 지정합니다.
PROJECT_ID Google Cloud의 프로젝트 ID입니다.
REPLICA_NAME 대상 복제본 인스턴스에 할당한 이름입니다.

이 확인 단계는 초기 응답 시 서비스 계정을 반환합니다. 마이그레이션 프로세스를 계속하려면 이 서비스 계정에 Cloud Storage 권한을 제공해야 합니다. 권한 부족 오류 메시지가 표시되는 것이 정상입니다. 다음은 응답 예시입니다.

{
    "kind": "sql#externalSyncSettingError",
    "type": "INSUFFICIENT_GCS_PERMISSIONS",
    "detail": "Service account
              p703314288590-df3om0@my-project.iam.gserviceaccount.com
              is missing necessary permissions storage.objects.list and
              storage.objects.get to access Google Cloud Storage bucket"
}

반환된 서비스 계정에 Cloud Storage 권한 추가

필요한 권한을 추가하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 Cloud Storage 버킷 페이지로 이동합니다.

    버킷으로 이동

  2. 권한 탭을 클릭합니다.

  3. 액세스 권한 부여를 클릭합니다.

  4. 새 주 구성원 필드에 확인 응답에서 반환된 서비스 계정 이름을 입력합니다. 예를 들어 이전 단계의 샘플 출력에서 반환된 서비스 계정 이름은 p703314288590-df3om0@my-project.iam.gserviceaccount.com입니다.

  5. 역할 선택 드롭다운에서 Storage Object Viewer 역할을 선택합니다.

  6. 저장을 클릭합니다.

확인 다시 실행

서비스 계정에 필요한 권한을 추가한 후 확인 단계를 다시 실행하여 서비스 계정에 Cloud Storage 버킷에 대한 액세스 권한이 있는지 확인합니다.

확인 단계에서는 다음을 확인합니다.

  • Cloud SQL 복제본과 외부 서버 간의 연결이 존재하지만 마이그레이션이 지속적으로 진행되는지
  • 복제 사용자 권한이 충분한지
  • 버전이 호환되는지
  • Cloud SQL 복제본이 아직 복제되지 않는지
  • Binlog가 외부 서버에서 사용 설정되어 있는지

문제가 감지되면 Cloud SQL에서 오류 메시지를 반환합니다.

Cloud SQL 복제본에 사용자 추가

외부 서버에서 데이터베이스 사용자 계정을 가져오거나 마이그레이션할 수 없습니다. Cloud SQL 복제본에 데이터베이스 사용자 계정을 추가해야 하는 경우 복제를 시작하기 전에 계정을 추가합니다. 자세한 내용은 기본 제공되는 인증으로 사용자 관리를 참조하세요.

마이그레이션 시작

확인을 완료하고 오류가 반환되지 않으면 마이그레이션을 시작할 수 있습니다. 외부 서버를 마이그레이션하려면 startExternalSync API를 사용합니다.

다음 명령어를 사용하세요.

gcloud auth login
ACCESS_TOKEN="$(gcloud auth print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
     --data '{
               "syncMode": "SYNC_MODE",
               "skipVerification": false,
               "migrationType": "PHYSICAL"
              }' \
     -X POST \
https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_NAME/startExternalSync
속성 설명
SYNC_MODE 마이그레이션을 일회성 프로세스로 구성하려면 offline을 지정합니다. 외부 서버에서의 지속적 복제를 설정하려면 online을 지정합니다.
PROJECT_ID Google Cloud의 프로젝트 ID입니다.
REPLICA_NAME 대상 복제본 인스턴스에 할당한 이름입니다.

마이그레이션 모니터링

마이그레이션 상태를 확인하려면 다음을 수행합니다.

  1. startExternalSync API의 응답에서 마이그레이션 작업의 작업 ID를 검색합니다. 예를 들면 다음과 같습니다.

    {
    "kind": "sql#operation",
     "targetLink": "https://sqladmin.googleapis.com/v1/projects/my-project/instances/replica-instance",
     "status": "PENDING",
     "user": "user@example.com",
     "insertTime": "******",
     "operationType": "START_EXTERNAL_SYNC",
     "name": "******",
     "targetId": "replica-instance",
     "selfLink": "https://sqladmin.googleapis.com/v1/projects/my-project/operations/OPERATION_ID",
     "targetProject": "my-project"
    }
    
  2. 다음 명령어에서 작업 ID를 사용합니다.

    gcloud auth login
    ACCESS_TOKEN="$(gcloud auth print-access-token)"
    curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
        --header 'Content-Type: application/json' \
        -X GET \
    https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/START_EXTERNAL_SYNC_OPERATION_ID
    
    속성 설명
    PROJECT_ID Google Cloud의 프로젝트 ID입니다.
    START_EXTERNAL_SYNC_OPERATION_ID 마이그레이션 작업의 작업 ID입니다.

복제 모니터링

Cloud SQL의 대상 복제본 인스턴스가 초기 데이터 로드를 완료하면 인스턴스가 외부 서버에 연결되어 내보내기 작업 후 실행된 모든 업데이트를 적용합니다.

복제 상태를 모니터링하려면 복제 상태 확인을 참조하세요.

Cloud SQL 복제본이 외부 서버에서 모든 변경사항을 수신하고 Cloud SQL 복제본에 복제 지연이 없으면 데이터베이스에 연결합니다. 적절한 데이터베이스 명령어를 실행하여 외부 서버와 비교할 때 콘텐츠가 예상대로인지 확인합니다.

대상 복제본을 독립형 인스턴스로 승격한 후에는 Cloud Storage 버킷에서 XtraBackup 물리적 파일을 삭제할 수 있습니다. 필요한 확인이 완료될 때까지 외부 서버를 보존합니다.

제한사항

이 섹션에서는 XtraBackup 마이그레이션 프로세스의 제한사항을 보여줍니다.

  • Percona XtraBackup을 사용하여 데이터를 Cloud Storage 버킷에 백업해야 합니다. 다른 백업 유틸리티는 지원되지 않습니다.
  • 이전 데이터베이스 주 버전 또는 부 버전에는 마이그레이션이 지원되지 않습니다. 예를 들어 MySQL 8.0에서 5.7로 또는 MySQL 8.0.36에서 8.0.16으로 마이그레이션할 수 없습니다.
  • XtraBackup 물리적 파일에서 데이터베이스 마이그레이션은 온프레미스 MySQL 데이터베이스 또는 Compute Engine VM에서 실행되는 자체 관리형 MySQL 데이터베이스에서만 지원됩니다. Amazon RDS 데이터베이스의 Amazon Aurora 또는 MySQL에서 마이그레이션할 수 없습니다.
  • 전체 백업에서만 마이그레이션할 수 있습니다. 증분 또는 부분 백업과 같은 다른 백업 유형은 지원되지 않습니다.
  • 데이터베이스 마이그레이션에는 데이터베이스 사용자 또는 권한이 포함되지 않습니다.
  • 바이너리 로그 형식을 ROW로 설정해야 합니다. 바이너리 로그를 STATEMENT 또는 MIXED와 같은 다른 형식으로 구성하면 복제가 실패할 수 있습니다.
  • Cloud Storage에서는 버킷에 업로드할 수 있는 파일 크기를 5TB로 제한합니다.
  • 외부 데이터베이스에서 플러그인을 마이그레이션할 수 없습니다.
  • 인스턴스에 고가용성을 구성한 경우 마이그레이션 초기 단계가 완료될 때까지 SLA가 적용되지 않습니다. 이 단계는 XtraBackup 물리적 파일의 모든 데이터를 Cloud SQL 인스턴스로 가져오면 완료된 것으로 간주됩니다.

문제 해결

이 섹션에는 일반적인 문제 해결 시나리오가 나와 있습니다.

가져오기 실패

마이그레이션할 때 Attempt 1/2: import failed와 비슷한 오류 메시지가 표시되면 마이그레이션을 시작할 때 migrationTypePHYSICAL을 지정해야 합니다.

migrationType을 지정하지 않으면 유형은 기본적으로 LOGICAL로 지정됩니다.

마이그레이션 취소 또는 중지

마이그레이션을 취소하거나 중지해야 하는 경우 다음 명령어를 실행할 수 있습니다.

gcloud auth login
ACCESS_TOKEN="$(gcloud auth print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
    -X POST \
https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_NAME/restart
속성 설명
PROJECT_ID Google Cloud의 프로젝트 ID입니다.
REPLICA_NAME 대상 복제본 인스턴스에 할당한 이름입니다.

다음 단계