.. _Install_Windows_Common_SettingUpDatabases: Создание и обновление баз данных ################################ Базы данных модулей Продукта создаются и обновляются с помощью утилиты Database Migrator. Она входит в стандартную поставку Продукта. Учетная запись SQL Server ************************* Модули Продукта должны подключаться к SQL Server, используя назначенную учетную запись пользователя SQL Server. .. note:: Если планируется использовать SQL Server, установленный на другой машине, то учетную запись пользователя следует получить от администратора установленного экземпляра SQL Server. .. note:: Рекомендуется использовать учетную запись с Windows-аутентификацией. .. warning:: | Не используйте учетную запись ``sa`` и пароль из примера в продуктивной среде. | Не оставляйте права администратора SQL Server для учетной записи, которая используется модулями Продукта. | Это может привести к несанкционированному доступу к данным, в том числе к содержимому документов. Распаковка и настройка Database Migrator **************************************** Для распаковки утилиты Database Migrator нужно выполнить команду: .. code-block:: console Expand-Archive TerraLink.xDEPro.DatabaseMigrator.3.2403.23131.1.zip -DestinationPath .\TerraLink.xDEPro .. note:: Имя файла дистрибутива Database Migrator содержит версию Продукта. В примере использована версия 3.2403.23131.1. Теперь нужно настроить подключение Database Migrator к SQL Server. Для этого требуется переименовать демонстрационный конфигурационный файл с шаблоном подключения к SQL Server в конфигурационный файл, который будет использоваться Database Migrator: .. code-block:: console Rename-Item -Path ".\TerraLink.xDEPro\DbMigrator\appsettings.SqlServer.json.demo" -NewName "appsettings.json" Далее нужно открыть конфигурационный файл в текстовом редакторе: .. code-block:: console notepad ".\TerraLink.xDEPro\DbMigrator\appsettings.json" найти поле ``ConnectionString``, заменить имя экземпляра SQL Server и задать имя пользователя и пароль назначенной учетной записи: .. code-block:: JSON { "ProviderName": "Microsoft.Data.SqlClient", "ConnectionString": "Server=.\\SQLEXPRESS;Database=DOCFLOW_DB;User Id=sa;Password=1234aA;MultipleActiveResultSets=true;Max Pool Size=500;TrustServerCertificate=True" } Затем нужно сохранить файл (``Ctrl+S``) и выйти из редактора. .. note:: Если планируется использовать SQL Server, установленный на другой машине, то в строке подключения нужно указать имя хоста (либо IP-адрес) и порт установленного экземпляра SQL Server. Запуск Database Migrator ************************ Запуск Database Migrator выполняется командой вида: .. code-block:: console .\TerraLink.xDEPro\DbMigrator\TerraLink.xDEPro.DbMigrator.Host.exe --source <источник данных миграции> --target <целевая база данных> где: * ``<источник данных миграции>`` - имя файла, который содержит сведения о структуре базы данных и ее изменениях от версии к версии; * ``<целевая база данных>`` - имя целевой базы данных на сервере баз данных. Если источник данных не указан, то Database Migrator по умолчанию работает с базой данных интеграционного модуля Продукта. Если базы данных с заданным именем не существует, то она будет создана. Если база данных с заданным именем существует, то она будет обновлена до версии, которой соответствует дистрибутив Database Migrator. Если имя базы данных не указано, то будет использовано имя по умолчанию - ``DOCFLOW_DB``. База данных интеграционного модуля ================================== Для создания или обновления базы данных интеграционного модуля нужно выполнить команду: .. code-block:: console .\TerraLink.xDEPro\DbMigrator\TerraLink.xDEPro.DbMigrator.Host.exe База данных сервиса генерации печатных форм =========================================== .. note:: Можно пропустить этот раздел, если на машину не планируется устанавливать компоненты :ref:`сервиса генерации печатных форм ЭДО `. Для создания или обновления базы данных сервиса генерации печатных форм нужно выполнить команду: .. code-block:: console .\TerraLink.xDEPro\DbMigrator\TerraLink.xDEPro.DbMigrator.Host.exe --source DbMigrator.Migrations.Printforms --target PRINTFORMS_DB База данных оператора внутрикорпоративного ЭДО ============================================== .. note:: Можно пропустить этот раздел, если на машину не планируется устанавливать компоненты :ref:`оператора внутрикорпоративного ЭДО `. Для создания или обновления базы данных оператора внутрикорпоративного ЭДО нужно выполнить команду: .. code-block:: console .\TerraLink.xDEPro\DbMigrator\TerraLink.xDEPro.DbMigrator.Host.exe --source DbMigrator.Migrations.Cdf --target CDF_DB