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 7.x  

Скопируйте базу данных логов системы с новым именем (например: "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

  • Через Мастер импорта и экспорта данныхSQL Server:

https://docs.microsoft.com/ru-ru/sql/integration-services/import-export-data/import-and-export-data-with-the-sql-server-import-and-export-wizard?view=sql-server-ver15

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

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

Миграция базы данных логов AM AirKey Cloud Server версии 7.x  

Скопируйте базу данных логов AM AirKey Cloud Server с новым именем (например: "indeed_akc_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

  • Через Мастер импорта и экспорта данныхSQL Server:

https://docs.microsoft.com/ru-ru/sql/integration-services/import-export-data/import-and-export-data-with-the-sql-server-import-and-export-wizard?view=sql-server-ver15

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

Далее, при настройке Log Server'a Indeed AM 8.1, для AM AirKey Cloud Server, укажите данную БД  (например: "indeed_akc_81_log") и учетную запись MS SQL сервера (Indeed AM AirKey Cloud Server)

Миграция базы данных хранилища AM AirKey Cloud Server версии 7.x  

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

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

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

  • Через Мастер импорта и экспорта данныхSQL Server:

https://docs.microsoft.com/ru-ru/sql/integration-services/import-export-data/import-and-export-data-with-the-sql-server-import-and-export-wizard?view=sql-server-ver15

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

Далее, при настройке Log Server'a Indeed AM 8.1, для AM AirKey Cloud Server, укажите данную БД  (например: "indeed_akc_81") и учетную запись MS SQL сервера (Indeed AM AirKey Cloud Server)


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

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

Для этого можно воспользоваться следующим способом:

Image Removed

Убедитесь, что к базе нет других подключений.

Запустите получившийся скрипт:

Image Removed

Image Removed
  1. таблицы


    Code Block
    languagesql
    titleТекст запроса
    delete FROM [indeed_am_81].[dbo].[dbinstanceproperties]
    delete FROM [indeed_am_81].[dbo].[DbLicenses]
    delete FROM [indeed_am_81].[dbo].[DbUserAuthenticators]
    delete FROM [indeed_am_81].[dbo].[DbHardwareDevices]
    delete FROM [indeed_am_81].[dbo].[DbHardwareDeviceProperties]


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

Список таблиц для миграции:

  • DbInstanceProperties
  • DbLicenses
  • DbUserAuthenticators
  • DbHardwareDevices
  • DbHardwareDeviceProperties

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


Запускаем экспорт данных БД - Export Wizard


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

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

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

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


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

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

Запросы получения данных из хранилища 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