스크립트 파일 만들기(Db2ToSQL)
SSMA(SQL Server Migration Assistant) 콘솔 애플리케이션을 시작하려면 먼저 스크립트 파일을 만들어야 합니다. 필요한 경우 변수 값 파일 및 서버 연결 파일을 만들 수도 있습니다.
스크립트 파일은 다음 세 개의 섹션으로 나눌 수 있습니다.
섹션 | 설명 |
---|---|
config |
콘솔 애플리케이션에 대한 구성 매개 변수를 설정합니다. |
servers |
원본/대상 서버 정의를 설정합니다. 별도의 서버 연결 파일에 있을 수도 있습니다. |
script-commands |
SSMA 워크플로 명령을 실행합니다. |
각 섹션은 이 문서에서 자세히 설명합니다.
SSMA 콘솔 애플리케이션 설정 구성
스크립트의 구성은 콘솔 스크립트 파일에 표시됩니다.
구성 노드에 지정된 요소가 있으면 전역 설정으로 설정됩니다. 즉, 모든 스크립트 명령에 적용됩니다. 전역 설정을 재정의하려는 경우 스크립트 명령 섹션의 각 명령 내에서 이러한 구성 요소를 설정할 수도 있습니다.
사용자가 구성할 수 있는 옵션은 다음과 같습니다.
출력 창 공급자: 특성이 설정된
true
경우suppress-messages
명령별 메시지가 콘솔에 표시되지 않습니다.attribute 설명 destination
출력을 파일 또는 stdout에 인쇄해야 하는지 여부를 지정합니다. 기본적으로 false
입니다.file-name
(선택 사항)파일의 경로입니다. suppress-messages
콘솔에서 메시지를 표시하지 않습니다. 기본적으로 false
입니다.예제:
<output-providers> <output-window suppress-messages="<true/false>" (optional) destination="<file/stdout>" (optional) file-name="<file-name>" (optional) /> </output-providers>
or
<...All commands...> <output-window suppress-messages="<true/false>" (optional) destination="<file/stdout>" (optional) file-name="<file-name>" (optional) /> </...All commands...>
데이터 마이그레이션 연결 공급자: 데이터 마이그레이션에 고려할 원본/대상 서버를 지정합니다. 원본 사용 마지막 사용은 마지막으로 사용된 원본 서버가 데이터 마이그레이션에 사용됨을 나타냅니다. 마찬가지로 target-use-last-used는 마지막으로 사용한 대상 서버가 데이터 마이그레이션에 사용됨을 나타냅니다. 특성 원본 서버 또는 대상 서버를 사용하여 서버(원본 또는 대상)를 지정할 수도 있습니다.
이러한 특성 중 하나만 한 번에 설정할 수 있습니다.
source-use-last-used="true"
(기본값) 또는source-server="<source-server-unique-name>"
target-use-last-used="true"
(기본값) 또는target-server="<target-server-unique-name>"
예제:
<output-providers> <data-migration-connection source-use-last-used="true" target-server="<target-server-unique-name>"/> </output-providers>
or
<migrate-data> <data-migration-connection source-server="<source-server-unique-name>" target-use-last-used="true"/> </migrate-data>
사용자 입력 팝업: 개체가 데이터베이스에서 로드될 때 오류를 처리할 수 있습니다. 입력 모드를 제공하고 오류가 발생하면 지정된 대로 콘솔이 진행됩니다.
모드 설명 ask-user
계속() 또는 오류 발생( yes
)하라는no
메시지가 표시됩니다.error
(기본값)콘솔에 오류가 표시되고 실행이 중지됩니다. continue
콘솔은 실행을 진행합니다. 예제:
<output-providers> <user-input-popup mode="<ask-user/continue/error>"/> </output-providers>
or
<!-- Connect to target database --> <connect-target-database server="<target-server-unique-name>"> <user-input-popup mode="<ask-user/continue/error>"/> </connect-target-database>
공급자 다시 연결: 연결 오류가 있는 경우 다시 연결 설정을 사용할 수 있습니다. 원본 서버와 대상 서버 모두에 대해 설정할 수 있습니다.
다시 연결 모드 설명 reconnect-to-last-used-server
연결이 활성화되지 않은 경우 최대 5번 사용된 마지막 서버에 다시 연결하려고 시도합니다. generate-an-error
(기본값)연결이 활성화되지 않으면 오류가 생성됩니다. 예제:
<output-providers> <reconnect-manager on-source-reconnect="<reconnect-to-last-used-server/generate-an-error>" on-target-reconnect="<reconnect-to-last-used-server/generate-an-error>"/> </output-providers>
or
<!--synchronization--> <synchronize-target> <reconnect-manager on-target-reconnect="reconnect-to-last-used-server"/> </synchronize-target>
or
<!--data migration--> <migrate-data server="<target-server-unique-name>"> <reconnect-manager on-source-reconnect="reconnect-to-last-used-server" on-target-reconnect="generate-an-error"/> </migrate-data>
변환기 덮어쓰기 공급자: 대상 메타베이스에 이미 있는 개체를 처리할 수 있습니다.
작업 설명 error
콘솔에 오류가 표시되고 실행이 중지됩니다. overwrite
(기본값)기존 개체 값을 덮어씁니다. skip
콘솔은 데이터베이스에 이미 있는 개체를 건너뜁니다. ask-user
입력 yes
/no
()을 묻는 메시지를 표시합니다.예제:
<output-providers> <object-overwrite action="<error/skip/overwrite/ask-user>"/> </output-providers>
or
<convert-schema object-name="<object-name>"> <object-overwrite action="<error/skip/overwrite/ask-user>"/> </convert-schema>
실패한 필수 구성 요소 공급자: 명령 처리에 필요한 모든 필수 구성 요소를 처리할 수 있습니다. 기본적으로
strict-mode
는false
합니다. 이 경우true
필수 구성 요소를 충족하지 못하는 경우 예외가 생성됩니다.예제:
<output-providers> <prerequisites strict-mode="<true/false>"/> </output-providers>
작업 중지: 중간 작업 중에 작업을 중지하려면 Ctrl+C 바로 가기 키를 사용할 수 있습니다. SSMA용 SSMA 콘솔 애플리케이션은 작업이 완료되기를 기다렸다가 콘솔 실행을 종료합니다.
실행을 즉시 중지하려면 Ctrl+C 핫키를 다시 눌러 SSMA 콘솔 애플리케이션을 종료할 수 있습니다.
진행률 공급자: 각 콘솔 명령의 진행률을 알려줍니다. 기본적으로 사용하지 않도록 설정되어 있습니다. 진행률 보고 특성은 다음으로 구성됩니다.
off
every-1%
every-2%
every-5%
every-10%
every-20%
예제:
<output-providers> progress-reporting enable="<true/false>" (optional) report-messages="<true/false>" (optional) report-progress="every-1%/every-2%/every-5%/every-10%/every-20%/off" (optional)/> </output-providers>
or
<...All commands...> <progress-reporting enable="<true/false>" (optional) report-messages="<true/false>" (optional) report-progress="every-1%/every-2%/every-5%/every-10%/every-20%/off" (optional)/> </...All commands...>
로거 세부 정보 표시: 로그 세부 정보 표시 수준을 설정합니다. 이는 UI의 모든 범주 옵션에 해당합니다.
로거 수준 설명 fatal-error
치명적인 오류 메시지만 기록됩니다. error
(기본값)오류 및 심각한 오류 메시지만 기록됩니다. warning
디버그 및 정보 메시지를 제외한 모든 수준이 기록됩니다. info
디버그 메시지를 제외한 모든 수준이 기록됩니다. debug
기록된 메시지의 모든 수준입니다. 필수 메시지는 모든 수준에서 기록됩니다.
예제:
<output-providers> <log-verbosity level="fatal-error/error/warning/info/debug"/> </output-providers>
or
<...All commands...> <log-verbosity level="fatal-error/error/warning/info/debug"/> </...All commands...>
암호화된 암호 재정의: 서버 연결 파일 또는 스크립트 파일의 서버 정의 섹션에 지정된 텍스트 암호 지우기 암호가 있는 경우
true
보호된 스토리지에 저장된 암호화된 암호를 재정의합니다. 암호가 명확한 텍스트로 지정되지 않은 경우 암호를 입력하라는 메시지가 표시됩니다.여기서는 다음 두 가지 경우가 발생합니다.
재정의 옵션이 false이면 검색 순서가 보호된 스토리지 > 스크립트 파일 > 서버 연결 파일 > 프롬프트 사용자입니다.
재정의 옵션이 true이면 검색 순서는 스크립트 파일 > 서버 연결 파일 > 프롬프트 사용자입니다.
예제:
<output-providers> <encrypted-password override="<true/false>"/> </output-providers>
구성할 수 없는 옵션은 다음과 같습니다.
- 최대 다시 연결 시도: 네트워크 오류로 인해 설정된 연결 시간이 초과되거나 중단되는 경우 서버를 다시 연결해야 합니다. 다시 연결 시도는 최대
5
재시도까지 허용되며, 그 후 콘솔은 자동으로 다시 연결을 수행합니다. 자동 다시 연결 기능을 사용하면 스크립트를 다시 실행하기 위한 노력이 줄어듭니다.
서버 연결 매개 변수
서버 연결 매개 변수는 스크립트 파일 또는 서버 연결 파일에서 정의할 수 있습니다. 자세한 내용은 서버 연결 파일 만들기를 참조 하세요.
스크립트 명령
스크립트 파일에는 XML 형식의 마이그레이션 워크플로 명령 시퀀스가 포함되어 있습니다. SSMA 콘솔 애플리케이션은 스크립트 파일에 나타나는 명령 순서대로 마이그레이션을 처리합니다.
예를 들어 Db2 데이터베이스에서 특정 테이블의 일반적인 데이터 마이그레이션은 스키마>테이블의 계층 구조를 따릅니다.
스크립트 파일의 모든 명령이 성공적으로 실행되면 SSMA 콘솔 애플리케이션이 종료됩니다. 스크립트 파일의 내용은 가변 값 파일 또는 변수 값에 대한 스크립트 파일 내의 별도 섹션에 포함된 변수 정보를 사용하여 정적입니다.
예제:
다음은 스크립트 파일 명령의 샘플입니다.
<ssma-script-file>
<script-commands>
<create-new-project project-folder="<project-folder>"
project-name="<project-name>"
overwrite-if-exists="<true/false>"/>
<connect-source-database server="<source-server-unique-name>"/>
<save-project/>
<close-project/>
</script-commands>
</ssma-script-file>
세 개의 스크립트 파일(다양한 시나리오 실행용), 변수 값 파일 및 서버 연결 파일로 구성된 템플릿은 제품 디렉터리의 샘플 콘솔 스크립트 폴더에 제공됩니다.
AssessmentReportGenerationSample.xml
ConversionAndDataMigrationSample.xml
SqlStatementConversionSample.xml
VariableValueFileSample.xml
ServersConnectionFileSample.xml
관련성을 위해 해당 파일에 표시된 매개 변수를 변경한 후 템플릿(파일)을 실행할 수 있습니다.
스크립트 명령의 전체 목록은 SSMA 콘솔 실행에서 찾을 수 있습니다.
스크립트 파일 유효성 검사
폴더에서 사용할 수 있는 스키마 정의 파일에 대해 스크립트 파일 O2SSConsoleScriptSchema.xsd
의 유효성을 검사할 Schemas
수 있습니다.