Docs Menu
Docs Home
/
Relational Migrator
/ /

SQL 서버에 대한 마이그레이션 전제 조건 구성

이 페이지의 내용

  • 이 작업에 대하여
  • 단계
  • 자세히 알아보기

SQL 서버 소스 데이터베이스에서 동기화 작업을 실행하려면 데이터베이스에서 일부 구성을 변경해야 할 수 있습니다. Relational Migrator는 동기화 작업을 시작하기 전에 데이터베이스가 올바르게 구성되었는지 확인합니다. Relational Migrator가 데이터베이스 구성 변경이 필요하다고 판단하면 필요한 변경 사항이 포함된 SQL 스크립트를 자동으로 생성합니다. 데이터베이스 관리자(DBA)에게 이 스크립트의 명령을 검토하고 데이터베이스 서버에서 실행을 수행하도록 하는 것이 좋습니다. 이 주제에서는 필요한 구성 단계에 대해 자세히 설명합니다. SQL 서버 구성은 동기화 작업 유형에 따라 다릅니다.

  • 스냅샷 동기화 작업은 모든 데이터를 마이그레이션한 다음 중지됩니다.

  • 연속 동기화 작업은 스냅샷을 실행한 다음 CDC 단계로 들어가 데이터 변경 사항을 지속적으로 복제합니다.

  • 이 페이지에서는 Relational Migrator에서 자동으로 생성된 SQL 스크립트에 대한 세부 정보를 다룹니다.

  • Relational Migrator는 데이터베이스에 연결할 때 구성 설정을 자동으로 감지하고 필요한 경우 CDC를 활성화하는 데 적절한 SQL 문을 생성합니다.

  • Relational Migrator는 동기화 작업을 용이하게 하기 위해 SQL Server에 인덱스를 생성하지 않습니다. 인덱스 생성 권한은 필요하지 않습니다.

데이터베이스 를 설정하다 하는 가장 쉬운 방법은 동기화 작업생성할 때 Relational Migrator 에서 다운로드 하라는 메시지를 표시하는 자동으로 생성된 스크립트 를 실행 하는 것입니다. 권한을 이해하거나 SQL 을 수동으로 실행 하려면 아래 절차를 읽어보세요.

동기화 작업 유형에 따라 SQL Server 인스턴스를 구성합니다. 스냅샷 및 지속적 동기화 작업 구성에 대한 자세한 내용은 아래 탭을 참조하세요.

SQL 서버에 대한 스냅샷 작업의 경우 데이터베이스 수준에서 CDC를 활성화해야 합니다.

1

데이터베이스 수준 CDC에서 CDC를 활성화하면 데이터베이스에 소수의 시스템 테이블이 생성되어 사용자 테이블이 변경되지 않고 성능 오버헤드가 추가되지 않습니다. CDC만 활성화해도 변경 사항이 캡처되지 않습니다.

SQL MongoDB Server에 대한 연속 작업의 경우 데이터베이스 수준과 각 테이블의 테이블 수준 모두에서 CDC를 활성화해야 합니다.

1

데이터베이스 수준에서 CDC를 활성화 하려면 sys.sp_cdc_enable_db 저장 프로시저를 사용합니다.

아래 코드 블록은 Relational Migrator에서 자동으로 생성된 코드의 샘플입니다. MyDB 의 데이터베이스 이름을 바꿔서 코드를 수동으로 실행할 수 있습니다.

USE MyDB
GO
EXEC sys.sp_cdc_enable_db
GO

Amazon Web Services RDS에서 호스팅되는 SQL MongoDB Server 인스턴스의 경우:

USE MyDB
GO
EXEC msdb.dbo.rds_cdc_enable_db 'MyDB';
GO
2

테이블 수준에서 CDC 옵션을 활성화하려면 다음을 수행합니다.

  1. 서버 수준 sysadmin 역할이 있어야 합니다.

  2. 데이터베이스 수준 db_owner 역할이 있어야 합니다.

  3. SQL Server 에이전트 실행 어야 합니다.

  4. SQL MongoDB Server에 연결하는 데 사용되는 서비스 계정에는 모든 필수 테이블에 대한 선택 권한이 있어야 합니다.

3

테이블 수준에서 CDC를 활성화하려면 sys.sp_cdc_enable_table 저장 프로시저를 사용합니다.

sys.tables 카탈로그 뷰 에서 is_tracked_by_cdc 열을 볼 때 SQL Server CDC 설정을 확인할 수 있습니다. . is_tracked_by_cdc 의 값이 1 이면 테이블에서 변경 데이터 캡처가 활성화되었음을 나타냅니다.

아래 코드 블록은 자동으로 생성된 코드의 샘플입니다. 코드를 수동으로 실행하여 테이블 CDC를 활성화할 수 있습니다.

USE MyDB
GO
EXEC sys.sp_cdc_enable_table
@source_schema = N'dbo',
@source_name = N'MyTable',
@role_name = N'MyRole',
@filegroup_name = N'MyDB_CT',
@supports_net_changes = 1
GO

Relational Migrator 는 오픈 소스 Debezium connector 를 사용하여 행 수준 변경 사항을 캡처합니다. 자세한 내용은 Debezium SQL Server를 참조하세요.

돌아가기

PostgreSQL