카테고리 없음

Microsoft SQL Server to a MySQL 데이터 이관

필유아사 2023. 4. 3. 11:29

MySQL Workbench 를 활용한 방법을 설명합니다.

 

환경

- SQLServer : Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64)

- MySQL : 8.0.32

- MySQL Workbench : 윈도우 10에 설치

 

ODBC 설정

1. SQLServer에 접속할 수 있는 ODBC 설정

MySQL Workbench 가 설치되어 있는 윈도우 환경에서 SQLServer에 접속하는 ODBC를 설정합니다.

제어판 - 관리도구 - ODBC 데이터 원본(64비트)

 

2. MySQL Workbench 에서 migration 수행

- [Database] - [Migration Wizard...] 클릭 후 첫 화면에서 [Start Migration] 버튼을 클릭한다.

아래와 같은 "Source Selection" 화면이 나오면 아래 내용을 선택하거나 입력한다.

- Database System : Microsoft SQ Server 를 선택

- Connection Method : ODBC Data Source 를 선택

- DSN에서는 각자가 만든 SQLServer ODBC를 선택(본 문서의 예시에서는 sqlserver-odbc 선택)

- Username : 소스 DB의 user명 입력

- Database : 데이터 마이그레이션을 할 Database 입력

[Test Connection] 버튼을 클릭하여 정상적으로 접속되는지 확인한 후 [Next] 버튼을 클릭한다.

 

아래와 같은 "Target Selection" 화면이 나오면 아래 내용을 선택하거나 입력한다.

- Connection Method : Standard(TCP/IP)를 선택

- Hostname : 타겟 DB의 IP나 호스트명을 입력

- Port : 타겟DB 접속 Port

- Username : 타겟 DB의 접속 user명 입력

- Database Schema : 데이터 마이그레이션을 할 Database 입력 --> 수정

[Test Connection] 버튼을 클릭하여 정상적으로 접속되는지 확인한 후 [Next] 버튼을 클릭한다.

 

위의 입력 내용을 바탕으로 소스DB와 타겟DB 접속을 확인하고 소스DB로부터 스키마를 조회한다. 아래 화면처럼 3개의 체크상태가 정상이면 [Next] 버튼을 클릭한다.

 

Schemas Selection

아래 화면이 나타나면 마이그레이션할 데이터베이스를 선택한다. 아래 화면은  "migratedb"를 선택한 예제이다.

스키마 이름 매핑 방법(Schema Name Mapping Method)은 Microsoft SQL Server에서 마이그레이션하기 위한 아래의 옵션을 제공한다.

  • Keep schemas as they are: Catalog.Schema.Table -> Schema.Table: 스키마당 하나씩 여러 데이터베이스가 생성
  • Only one schema: Catalog.Schema.Table -> Catalog.Table: 각 스키마를 단일 데이터베이스로 병합(다음 그림 참조).
  • Only one schema, keep current schema names as a prefix: Catalog.Schema.Table -> Catalog.Schema_table: 스키마 이름을 접두사로 유지