SQL Server용 Cloud SQL 소스의 마이그레이션 작업 만들기

이 페이지에서는 Google Cloud CLI를 사용하여 SQL Server용 Cloud SQL 소스의 마이그레이션 작업을 만드는 방법을 설명합니다. Database Migration Service를 사용하여 SQL Server용 Cloud SQL 인스턴스 간에 이전하는 방법에 대한 자세한 내용은 SQL Server용 Cloud SQL 소스 이전 가이드를 참조하세요.

시작하기 전에

  1. 다음 요구사항을 충족해야 합니다.
    • SQL Server 백업 파일용 Cloud Storage 버킷이 있습니다.
    • 소스 인스턴스의 소스 연결 프로필이 있습니다.
    • 대상 SQL Server용 Cloud SQL 인스턴스를 만들고 구성했으며 인스턴스의 대상 연결 프로필이 있습니다.
  2. Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Database Migration Service, Compute Engine, Cloud Storage, Cloud SQL Admin API를 사용 설정합니다.

    API 사용 설정

필요한 역할

Database Migration Service에서 마이그레이션 작업을 만드는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

이러한 사전 정의된 역할에는 Database Migration Service를 사용하여 동종 SQL Server 마이그레이션을 수행하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

Database Migration Service로 동종 SQL Server 마이그레이션을 수행하려면 다음 권한이 필요합니다.

  • datamigration.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • cloudsql.instances.create
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.databases.get
  • cloudsql.databases.delete
  • cloudsql.operations.get
  • compute.machineTypes.list
  • compute.machineTypes.get
  • compute.projects.get
  • storage.buckets.create
  • storage.buckets.list
  • storage.objects.list

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

설정 정의 및 마이그레이션 작업 만들기

gcloud

이 샘플에서는 선택적 --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: 대상 연결 프로필의 기계 가독형 식별자
  • DESTINATION_PROJECT_ID를 대상 SQL Server용 Cloud SQL 인스턴스가 있는 Google Cloud 프로젝트 식별자로 바꿉니다. Database Migration Service API가 사용 설정되어 있고 마이그레이션 작업을 만드는 프로젝트와 동일한 프로젝트여야 합니다.
  • COMMA_SEPARATED_DATABASE_ID_LIST를 백업 파일에서 마이그레이션하려는 SQL Server의 데이터베이스 식별자의 쉼표로 구분된 목록으로 바꿉니다.

다음 명령어를 실행합니다.

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 \
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST \
  --project=DESTINATION_PROJECT_ID \
  --type=CONTINUOUS

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 `
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST `
  --project=DESTINATION_PROJECT_ID `
  --type=CONTINUOUS

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 ^
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST ^
  --project=DESTINATION_PROJECT_ID ^
  --type=CONTINUOUS

다음과 비슷한 응답이 표시됩니다.

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]
결과

이제 마이그레이션 작업이 생성되었습니다. 이전 프로세스를 진행할 수 있습니다.

다음 단계