Перейти к содержанию

Миграция через командную строку

При работе с переносом конфигурации из консоли используется исполняемый файл TCModuleMigrationUtility.exe. Файл должен запускаться с правами администратора.

Примеры запуска из консоли

Экспорт

В командной строке указываются все аргументы:

TCModuleMigrationUtility.exe -m export -fin "D:\Test\test.json" -fout "D:\Test\test.zip" -cn "Data Source=Test;Initial Catalog=Test;Persist Security Info=True;User ID=test;Password=test;Max Pool Size=2500;MultipleActiveResultSets=false"

В командной строке указываются обязательные аргументы, строка подключения — в отдельном файле:

TCModuleMigrationUtility.exe -m export -cnf exportConnectionString.txt

Импорт

В командной строке указываются все аргументы:

TCModuleMigrationUtility.exe -m import -fin "D:\Test\test.zip" -fout "D:\Test\test.log" -cn "Data Source=Test;Initial Catalog=Test;Persist Security Info=True;User ID=test;Password=test;Max Pool Size=2500;MultipleActiveResultSets=false" -ioki true

В командной строке указываются обязательные аргументы:

TCModuleMigrationUtility.exe -m import -cn "Data Source=Test;Initial Catalog=Test;Persist Security Info=True;User ID=test;Password=test;Max Pool Size=2500;MultipleActiveResultSets=false"

В командной строке указываются обязательные аргументы, строка подключения — в отдельном файле:

TCModuleMigrationUtility.exe -m import -fin 123.zip -cnf importConnectionString.txt -ioki true -iod true

Импорт без сохранения идентификаторов (dev→prod с расхождением ID):

TCModuleMigrationUtility.exe -m import -fin data.zip -cn "Data Source=Prod;Initial Catalog=D10Task;..." -iowki true -iod true

Импорт как новые сущности:

TCModuleMigrationUtility.exe -m import -fin data.zip -cn "Data Source=Prod;Initial Catalog=D10Task;..." -inpk true -iod true

Ключи

Ключ Обязательность Описание
-m обязателен Режим работы. Доступные значения: export, import
-fin не обязателен Путь для чтения входящего файла. При импорте — zip-файл, созданный при экспорте (по умолчанию: <путь до исполняемого файла>/ModuleMigrationFiles/module.zip). При экспорте — json-файл со словарём "ключ — значение", где ключ — имя таблицы из БД, а значение — массив GUID нужных сущностей (по умолчанию: <путь до исполняемого файла>/ModuleMigrationFiles/module.json)
-fout не обязателен Путь для записи исходящего файла. При импорте — log-файл с логами выполнения (по умолчанию: <путь до исполняемого файла>/ModuleMigrationFiles/module.log). При экспорте — zip-файл с экспортируемыми данными (по умолчанию: <путь до исполняемого файла>/ModuleMigrationFiles/module.zip)
-cn обязателен один из -cn / -cnf; если заданы оба — применяется тот, что указан последним Строка подключения к базе данных
-cnf обязателен один из -cn / -cnf Файл со строкой подключения к базе данных. Рекомендуемый формат — .txt
-ioki не обязателен (по умолчанию false) Импорт с сохранением идентификаторов. Только при импорте
-iowki не обязателен (по умолчанию false) Импорт без сохранения идентификаторов (ImportWithoutKeepIdentity). Сущности сопоставляются по GUID: существующие обновляются с сохранением ID приёмника, новые вставляются с ID от генератора приёмника. После импорта выполняется замена ID в SmartExpressions и ремап JSON-ссылок в порталах. Только при импорте. Взаимоисключающий с -ioki. Подробности: import-modes.md

| -inpk | не обязателен (по умолчанию false) | Импортировать как новые сущности (ImportAsNewData). Все сущности вставляются с новыми GUID и ID от генератора БД приёмника. Полная копия без привязки к ID источника. Только при импорте. Взаимоисключающий с -ioki. | | -iod | не обязателен | Включение/отключение денормализации после импорта | | -iodcf | не обязателен | Признак "Отключить констрейнты" | | -iondec | не обязателен | Признак "Не отключать и не включать констрейнты" |

При импорте в режиме без сохранения ID система автоматически пересчитывает ссылки в смарт-правилах (EventsActions.ParameterValue) — значения переходов, ДП и других переносимых сущностей заменяются на соответствующие ID целевой базы.

Задача: 1947030.

Пример значения json-файла для экспорта (две категории и один портал):

{
  "subcategories": [
    "ff03dc0f-35ca-e911-83a7-00c2c6572c8f",
    "ceb02222-35ca-e911-83a7-00c2c6572c8f"
  ],
  "portalGridTemplates": [
    "172b7c04-f4c7-e911-83a5-fcaa14202279"
  ]
}

Цвет сообщений

Цвет Типы сообщений Описание
серый trace, info Информационные сообщения, означают корректную работу программы
жёлтый warning Предупреждающие сообщения, означают, что программа работает корректно, но есть сообщения, на которые нужно обратить внимание
красный error Сообщения, содержащие ошибки; означают, что программа работает некорректно и остановлена с ошибкой

Связанные материалы

Утилита переноса (сквозной механизм)

Экспорт конфигурации

Импорт конфигурации