Создание файлов скриптов (Db2ToSQL)
Прежде чем запустить консольное приложение Помощник по миграции SQL Server (SSMA), необходимо создать файл скрипта. При необходимости можно также создать файл значения переменной и файл подключения сервера.
Файл скрипта можно разделить на три раздела:
Раздел | Описание |
---|---|
config |
Задайте параметры конфигурации для консольного приложения. |
servers |
Задайте определения исходного или целевого сервера. Также может находиться в отдельном файле подключения к серверу. |
script-commands |
Выполните команды рабочего процесса SSMA. |
Каждый раздел подробно описан в этой статье.
Настройка параметров консольного приложения SSMA
Конфигурации скрипта отображаются в файле скрипта консоли.
Если любой из элементов указан в узле конфигурации, они задаются в качестве глобального параметра. Другими словами, они применяются ко всем командам скрипта. Эти элементы конфигурации также можно задать в каждой команде в разделе "Скрипт-команда", если вы хотите переопределить глобальный параметр.
Параметры, настраиваемые пользователем, включают:
Поставщик окна вывода: если
suppress-messages
для атрибута задано значение, сообщения, относящиеся кtrue
команде, не отображаются в консоли.Атрибут Description 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...>
Поставщик подключения к миграции данных: указывает, какой исходный или целевой сервер следует учитывать для миграции данных. Последнее использование источника указывает, что последний используемый исходный сервер используется для миграции данных. Аналогичным образом используется последний используемый целевой сервер указывает, что последний используемый целевой сервер используется для миграции данных. Можно также указать сервер (источник или целевой объект), используя исходный сервер или целевой сервер атрибутов.
Одновременно можно задать только один из этих атрибутов:
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>
Всплывающее окно ввода пользователя: позволяет обрабатывать ошибки при загрузке объектов из базы данных. Вы предоставляете режимы ввода и при возникновении ошибки консоль продолжается, как указано.
Режим Description 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>
Поставщик повторного подключения. Позволяет задать параметры повторного подключения, если произошел сбой подключения. Это можно задать как для исходных, так и для целевых серверов.
Режим повторного подключения Description reconnect-to-last-used-server
Если подключение не активно, он пытается повторно подключиться к последнему серверу, используемому в течение пяти раз. 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>
Поставщик перезаписи конвертера: позволяет обрабатывать объекты, которые уже присутствуют в целевой метабазе.
Действие Description 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...>
Подробные сведения для средства ведения журнала. Задает уровень детализации журнала. Это соответствует параметру "Все категории " в пользовательском интерфейсе.
Уровень средства ведения журнала Description 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
.