Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Warning
titleВажно

Обязательное условие - ключи шифрования хранилища и структура пользовательских каталогов (их идентификаторы) обоих инстансов должны совпадать


Info
titleИнформация

Используется штатный набор инструментов SQL Server (SSMS).

Миграция осуществляется по шагам, интерактивно, прозрачно для DBA.

Используется инструментарий экспорта данных БД - Export Wizard.

Копирование базы данных Indeed AM Log Server версии 7.x  

Скопируйте базу данных Indeed AM log Server с новым именем (например: "indeed_am_81_log"), одним из следующих способов:

  • Через Мастер копирования базы данных:

https://docs.microsoft.com/ru-ru/sql/relational-databases/databases/use-the-copy-database-wizard?view=sql-server-ver15

  • Через Копирование баз данных путем создания и восстановления резервных копий:

https://docs.microsoft.com/ru-ru/sql/relational-databases/databases/copy-databases-with-backup-and-restore?view=sql-server-ver15

Image AddedПо завершении копирования, укажите для новой БД логин MS SQL сервера, с правами владельца:

Image AddedДалее, при настройке Log Server'a Indeed AM 8.1, укажите данную БД и учетную запись MS SQL сервера (Установка и настройка Indeed AM Log Server с хранилищем в СУБД)

Подготовка базы данных Indeed AM 8.1

  1. Создайте отдельную БД для хранилища системы Indeed AM 8.1
  2. Создайте иерархию таблиц в БД, с помощью Мастера конфигурации (Настройка с помощью мастера конфигурации)
  3. Принудительно очистите базу от всех данных

Миграция базы данных Indeed AM 7.x

По умолчанию, данные мы читаем из своего запроса [Query] и пишем в таблицу [Query], это необходимо изменить, выбрав соответствующую готовую таблицу из списка.
Список таблиц для миграции:

  • DbInstanceProperties
  • DbLicenses
  • DbUserAuthenticators
  • DbHardwareDevices
  • DbHardwareDeviceProperties

Все шаги повторяются для каждой мигрируемой таблицы.


  1. Выбираем источник данных - базу данных хранилища 7.x
  2. Выбираем приемник - базу данных хранилища 8.1
  3. Выбираем получение данных для экспорта пользовательским запросом
  4. Указываем запрос для выборки данных

    Info
    titleИнформация

    Общая особенность экспорта - конвертирование формата идентификаторов записей таблиц из nvarchar(128) и nvarchar(max) в uniqueidentifier.
    Текстовый вид uniqueidentifier обязательно должен содержать фигурные скобки {}, иначе конвертация sql server не сможет обработать строковое значение.


  5. Далее выбираем таблицы для экспорта и импорта


  6. В настройках маппинга на этом же экране указываем, что нужно удалять данные из таблицы - приемника
  7. Выбираем preview, чтобы убедится, что мы собираемся перенести нужные данные и запрос корректен
  8. Далее, проверяем набор полей и видим предупреждения о конвертировании данных
  9. Запускаем процедуру экспорта

Запросы получения данных из хранилища 7.x

  1. Запрос к таблице DbInstanceProperties

    Code Block
    languagesql
    titleТекст запроса
    select CONCAT('{', id, '}') as Id
          ,Name
    	  ,Value 
      from dbo.dbinstanceproperties


  2. Запрос к таблице DbLicenses

    Code Block
    languagesql
    titleТекст запроса
    SELECT CONCAT('{', id, '}') as Id
          ,[LicenseUid]
          ,[InstanceId]
          ,[Type]
          ,[AmountValue]
          ,[BeginDate]
          ,[EndDate]
          ,[Description]
          ,[Issuer]
          ,[IssuedTo]
          ,[IssueDate]
          ,[ControlValue]
      FROM [dbo].[DbLicenses]


  3. Запрос к таблице DbUserAuthenticators

    Code Block
    languagesql
    titleТекст запроса
    SELECT CONCAT('{', id, '}') as Id
          ,[UserId]
          ,CONCAT('{', ModeId, '}') as ModeId
          ,[ModeTypeName]
          ,[ModeDeviceName]
          ,[ModeType]
          ,[CreatedOn]
          ,[TemplateRawData]
          ,[Description]
          ,[IsDisabled]
          ,[ExpirationDate]
          ,[AuthenticationCountLimitValue]
          ,[Flags]
          ,[IsLocked]
          ,[SerialNumber]
      FROM [dbo].[DbUserAuthenticators]


  4. Запрос к таблице DbHardwareDevices

    Code Block
    languagesql
    titleТекст запроса
    SELECT CONCAT('{', id, '}') as Id
          ,CONCAT('{', CAST(Type as nvarchar(128)), '}') as Type
          ,CAST(SerialNumber as nvarchar(256)) as SerialNumber
          ,[RegistrationDate]
          ,[IsEnabled]
          ,[Comment]
          ,[Model]
      FROM [dbo].[DbHardwareDevices]


  5. Запрос к таблице DbHardwareDeviceProperties

    Code Block
    languagesql
    titleТекст запроса
    SELECT CONCAT('{', id, '}') as Id
          ,CONCAT('{', CAST(HardwareDeviceId as nvarchar(128)), '}') as HardwareDeviceId
          ,[PropertyId]
          ,[Value]
      FROM [dbo].[DbHardwareDeviceProperties]




Table of Contents