내보내기(0) 인쇄
모두 확장

방법: SQL Azure 마이그레이션 마법사사용

업데이트 날짜: 2014년 4월

Windows Azure SQL 데이터베이스 마이그레이션 마법사는 SQL Server 데이터베이스를 Microsoft Azure SQL 데이터베이스로 마이그레이션하는 데 사용하는 공유 원본 UI 도구입니다. 이 도구는 데이터 마이그레이션 외에도 호환성 문제를 식별하고, 가능한 경우 이러한 호환성 문제를 해결하며, 찾아낸 모든 문제를 사용자에게 알려 줍니다.

저자: Shaun Tinline-Jones

SQL 데이터베이스 마이그레이션 마법사는 단순 SQL Server 데이터베이스를 SQL 데이터베이스로 마이그레이션할 수 있는 쉽고 유연한 도구입니다. 복잡한 데이터베이스의 경우 이 마법사로 Microsoft Azure SQL 데이터베이스 요구 사항을 충족하는 데 필요한 변경 사항을 식별할 수 있습니다.

SQL 데이터베이스 마이그레이션 마법사는 다음과 같은 기본 작업을 지원합니다.

  • 단순 데이터베이스의 스키마와 데이터를 모두 Microsoft Azure SQL 데이터베이스로 마이그레이션합니다. 대량의 데이터를 로드할 때는 여러 개의 동시 대량 복사 작업을 수행하도록 마법사를 구성할 수 있습니다.

  • 구상 또는 계획 단계 중에 더 크고 복잡한 데이터베이스를 분석하는 데 도움이 됩니다.

    • Microsoft Azure SQL 데이터베이스에서 지원되지 않는 개체에 대한 데이터베이스를 분석합니다.

    • Microsoft Azure SQL 데이터베이스에서 지원되지 않는 구문이 있는지 Transact-SQL 파일을 검토합니다. 이 마법사는 Transact-SQL 스크립트 파일이나 SQL Server Profiler 추적 파일을 분석할 수 있습니다.

마법사를 실행하기 전에 CodePlex 프로젝트의 Documentation(설명서) 탭에서 설명서를 다운로드하여 검토합니다.

마법사를 그래픽 마법사 모드 또는 명령 프롬프트 유틸리티 모드로 실행할 수 있습니다. 이 마법사에는 두 개의 구성 파일이 사용되며, 이러한 파일을 수정하여 마법사의 작동을 조정할 수 있습니다. 구성 파일은 그래픽 모드에서 실행할 때의 기본 동작을 설정하고 명령 프롬프트 모드에서 실행할 때의 동작을 제어합니다.

  • NotSupportedByAzureFile.config 파일에는 Microsoft Azure SQL 데이터베이스에서 지원되지 않는 개체를 정의하는 Regex 항목이 들어 있습니다. 이 구성 파일을 조정하여 Microsoft Azure SQL 데이터베이스에서 호스팅하려는 데이터베이스에서 제외할 추가 패턴을 찾을 수 있습니다.

  • SQLAzureMW.exe.config 파일은 연결 방법, 분석할 Transact-SQL 파일 또는 데이터 복사 동작 등의 유틸리티 동작을 제어합니다. 이 파일을 수정하여 사이트의 기본 마법사 동작을 조정할 수 있습니다.

SQL 데이터베이스 마이그레이션 마법사는 DAC(데이터 계층 응용 프로그램) BACPAC를 사용하는 등 세 가지 기능을 결합하여 다른 옵션보다 더 빠른 속도로 보다 안정된 대량 복사 작업을 지원합니다.

  • SQL 데이터베이스 마이그레이션 마법사에는 연결 손실 처리에 대한 기본 제공 논리가 있습니다. 이 마법사는 스키마 업데이트를 개별 일괄 처리로 구분하며, 각 일괄 처리는 별도의 트랜잭션으로 관리됩니다. Microsoft Azure SQL 데이터베이스에서 연결을 종료할 때까지 마법사가 실행됩니다. 스키마 업데이트를 완료하기 전에 마법사에 연결 오류가 발생하면 Microsoft Azure SQL 데이터베이스와 새 연결을 다시 설정하고 마지막에 성공적으로 커밋된 트랜잭션 이후의 처리를 가져옵니다. 동일한 방식으로 bcp를 사용하여 데이터를 Microsoft Azure SQL 데이터베이스에 업로드할 때도 이 마법사는 데이터를 개별 일괄 처리로 분할하고 재시도 논리를 사용하여 연결이 닫히기 전에 성공적으로 업로드된 마지막 레코드를 확인합니다. 그러면 bcp에서 그 다음 레코드 집합으로 데이터 업로드를 다시 시작합니다.

  • 여러 동시 대량 복사 프로세스를 사용하여 대량의 데이터 로드 속도를 가속화하도록 마법사를 구성할 수 있습니다. 이 마법사에서는 단일 테이블에 대한 단일 여러 동시 대량 복사 작업을 수행할 수 없지만, 서로 다른 테이블에 대한 동시 대량 복사 작업을 예약할 수 있습니다.

  • 대량 복사 일괄 처리 간 대기 기간을 지정하고 작은 일괄 처리 크기를 구성하여 Microsoft Azure SQL 데이터베이스에서 마법사를 제한할 가능성을 줄일 수 있습니다. 일괄 처리 수에 맞게 일괄 크기를 적당히 조정해야 합니다. 일괄 크기가 너무 작으면 네트워크에서 개별적으로 전송해야 할 일괄 처리 수가 많아져서 네트워크 대기 시간 문제를 발생할 수 있습니다. 여러 번의 테스트를 통해 제한을 피할 수 있을 만큼 충분히 작으면서 네트워크 대기 시간을 줄일 수 있을 만큼 충분히 큰 일괄 처리 크기를 찾으십시오.

[맨 위로 이동]

note참고
SQL 데이터베이스 마이그레이션 마법사는 커뮤니티에서 작성되어 지원되는 공유 원본 도구입니다.

SQL 데이터베이스 마이그레이션 마법사에는 Transact-SQL 파서가 포함되어 있지 않으며, NotSupportedByAzureFile.config 파일의 Regex 정의에 따라 패턴 일치를 수행합니다. 일부 패턴 일치는 거짓 긍정일 수 있습니다. 또한 마법사와 함께 제공된 구성 파일에 Microsoft Azure SQL 데이터베이스에서 지원되지 않는 일부 항목에 대한 패턴이 포함되어 있지 않을 수도 있습니다. 마이그레이션 프로젝트의 이동 상태를 유지하려면 패턴을 찾을 때 패턴을 추가하도록 구성 파일을 업데이트할 수 있습니다. 일반적인 문제의 경우 향후 마법사 버전에 통합되도록 CodePlex 프로젝트로 제출하는 것을 고려해 볼 수도 있습니다. 프로젝트에 보다 엄격한 데이터베이스 분석이 필요한 경우에는 DAC 패키지 파일을 추출한 후 SQL Server Data Tools 프로젝트로 가져오는 것을 고려해 보십시오. 이 프로젝트에서는 SQL 데이터베이스를 프로젝트 대상으로 설정할 수 있습니다. SQL Server Data Tools는 Transact-SQL 파서를 사용하여 프로젝트를 분석하지만, 데이터베이스에서 일부 Microsoft Azure SQL 데이터베이스 비호환성을 찾지 못할 수도 있습니다.

모든 스키마 문제가 해결되었는지 여부를 확인할 수 있는 가장 확실한 방법은 새 데이터베이스 스키마를 Microsoft Azure SQL 데이터베이스로 테스트 배포하는 작업을 수행하는 것입니다. 응용 프로그램 코드에서 모든 Transact-SQL 문제가 해결되었는지 여부를 확인할 수 있는 가장 확실한 방법은 Microsoft Azure SQL 데이터베이스에 배포된 데이터베이스 복사본에 대해 실행 중인 응용 프로그램의 기능 테스트를 수행하는 것입니다.

이 마법사는 모든 데이터베이스의 초기 분석용으로 좋은 도구입니다. 하지만 Microsoft Azure SQL 데이터베이스에서 실행하기 전에 많은 변경이 필요한 복잡한 데이터베이스에 대한 개발 작업을 관리하려는 경우에는 다른 도구가 더 적합합니다. 예를 들면 마법사에서 발견된 패턴에 대한 대체 항목을 Regex 패턴 정의 안에 지정할 수 있지만, 이 기능은 제한적입니다. 보다 복잡한 변경 사항을 관리하려면 DAC 패키지 파일을 추출한 후 SQL Server Data Tools 프로젝트로 가져오는 등 다른 도구의 사용을 고려해 보십시오.

프로덕션 시스템에서 프로파일러 추적을 생성할 경우 성능이 너무 느려질 수 있습니다. 테스트 시스템에서 추적을 생성하는 편이 더 낫습니다. 프로덕션 시스템을 프로파일링해야 하는 경우에는 문이 완료된 이벤트만 추적하여 영향을 최소화합니다.

[맨 위로 이동]

SQL 데이터베이스 마이그레이션 마법사는 CodePlex의 SQL 데이터베이스 마이그레이션 마법사 프로젝트에서 다운로드할 수 있습니다. 로컬 컴퓨터에 패키지의 압출을 풀고 SQLAzureMW.exe를 실행합니다.

[맨 위로 이동]

데이터베이스를 마이그레이션하려면

  1. 마법사의 안내에 따라 수행할 프로세스를 선택합니다.

  2. 스크립팅할 원본을 선택합니다.

  3. 스크립팅할 데이터베이스 개체를 선택합니다.

  4. 스크립트를 생성합니다. 나중에 스크립트를 수정할 수도 있습니다.

  5. 대상 서버에 연결하는 데 필요한 정보를 입력합니다. Microsoft Azure SQL 데이터베이스에 대상 데이터베이스를 만들 수 있습니다.

  6. 대상 서버에 대해 스크립트를 실행합니다.

[맨 위로 이동]

데이터베이스에서 마이그레이션 문제를 분석하려면

  1. 마법사의 안내에 따라 수행할 프로세스를 선택합니다.

  2. 분석할 원본을 선택합니다.

  3. 분석할 데이터베이스 개체를 선택합니다.

  4. 스크립트를 생성합니다.

  5. 요약 결과 창에서 마법사를 통해 보고된 문제를 검토합니다.

[맨 위로 이동]

데이터베이스에서 마이그레이션 문제를 분석하려면

  1. 마법사의 안내에 따라 수행할 프로세스를 선택합니다.

  2. 원본으로 분석할 Transact-SQL 파일을 선택합니다.

  3. 스크립트를 생성합니다.

  4. 요약 결과 창에서 마법사를 통해 보고된 문제를 검토합니다.

[맨 위로 이동]

데이터베이스에서 마이그레이션 문제를 분석하려면

  1. 마법사의 안내에 따라 수행할 프로세스를 선택합니다.

  2. 원본으로 분석할 추적 파일을 선택합니다.

  3. 스크립트를 생성합니다.

  4. 요약 결과 창에서 마법사를 통해 보고된 문제를 검토합니다.

[맨 위로 이동]

표시:
© 2014 Microsoft