Поделиться через


Руководство по переносу SQL Server в SQL Server на виртуальной машине Azure с помощью Azure DMS (в автономном режиме)

Azure Database Migration Service (Azure DMS) можно использовать на портале Azure для переноса баз данных из локального экземпляра SQL Server в То, что такое SQL Server на виртуальных машинах Windows Azure? (виртуальная машина Azure) с минимальным временем простоя.

Сведения о методах миграции баз данных, которые могут потребовать некоторой ручной настройки, см. в статье о миграции экземпляра SQL Server в SQL Server в Azure Виртуальные машины.

В этом руководстве вы переносите AdventureWorks2025 базу данных из локального экземпляра SQL Server в SQL Server на виртуальной машине Azure с минимальным временем простоя с помощью Azure DMS.

Замечание

В этом руководстве используется режим автономной миграции, который включает некоторые допустимые простои во время процесса миграции. Сведения о вариантах миграции по сети см. в руководстве по переносу SQL Server на SQL Server на виртуальной машине Azure с помощью Azure DMS (в интернете).

В этом руководстве вы узнаете, как:

  • Запустите мастер миграции в SQL Azure на портале Azure.
  • Укажите сведения о исходном SQL Server, расположении резервного копирования и целевом SQL Server на виртуальной машине Azure.
  • Настройте мастер для доступа к исходному серверу и резервным копиям.
  • запустить и отслеживать ход выполнения миграции.
  • Выполните переход на миграцию после готовности.

Варианты переноса

В следующем разделе объясняется, как использовать службу миграции баз данных Azure через расширение миграции SQL Azure или в портале Azure.

Предпосылки

Прежде чем приступить к работе с руководством, выполните следующие действия.

  • Убедитесь, что вы можете получить доступ к порталу Azure.

  • Убедитесь, что поставщик ресурсов Microsoft.DataMigrationзарегистрирован в вашей подписке.

  • У вас есть учетная запись Azure, назначенная одной из следующих встроенных ролей:

    • Участник целевого экземпляра SQL Server на виртуальной машине Azure и учетной записи хранения, в которой вы отправляете файлы резервной копии базы данных из сетевой папки "Блок сообщений сервера" (SMB).

    • Роль читателя для группы ресурсов Azure, содержащей целевой экземпляр SQL Server на виртуальной машине Azure или учетной записи хранения Azure.

    • Роль владельца или участника для подписки Azure.

    • В качестве альтернативы использованию одной из этих встроенных ролей можно назначить пользовательские роли.

    При использовании портала Azure для миграции пользователь, вошедшего в систему, должен иметь доступ для чтения данных BLOB-объектов хранилища в контейнере BLOB-объектов, в котором хранятся файлы резервного копирования, чтобы получить доступ к файлам и папкам во время настройки миграции.

  • Создайте целевой экземпляр SQL Server в Azure Виртуальные машины.

    Если у вас есть виртуальная машина Azure, зарегистрируйте ее в расширении агента IaaS SQL Server в режиме полного управления.

  • Убедитесь, что имена входа, используемые для подключения к исходному экземпляру SQL Server, являются членами роли сервера sysadmin или имеют CONTROL SERVER разрешение.

  • Укажите сетевую папку SMB, общую папку учетной записи хранения Azure или контейнер BLOB-объектов учетной записи хранения Azure, содержащий полные файлы резервного копирования базы данных и последующие файлы резервного копирования журналов транзакций. Azure DMS использует расположение резервного копирования во время миграции базы данных.

    • Всегда используйте выделенную учетную запись хранения для миграции. Совместное использование с другими рабочими нагрузками может привести к конфликтам и рискам безопасности.

    • После завершения миграции измените ключ учетной записи хранения, чтобы обеспечить безопасность резервных копий или удалите учетную запись хранения, если она больше не нужна.

    • Azure DMS не создает резервные копии базы данных и не инициирует резервные копии базы данных от вашего имени. Вместо этого служба использует существующие файлы резервной копии базы данных для миграции.

    • Если файлы резервной копии базы данных находятся в сетевом ресурсе SMB, создайте учетную запись хранения Azure , которая позволяет Azure DMS отправлять файлы резервной копии базы данных и переносить базы данных. Создайте учетную запись хранения Azure в том же регионе, где создается экземпляр Azure DMS.

    • Вы можете записать каждую резервную копию в отдельный файл резервного копирования или в несколько файлов резервного копирования. Добавление нескольких резервных копий, таких как полные и журналы транзакций, в один носитель резервных копий не поддерживается.

    • Чтобы снизить вероятность возникновения потенциальных проблем, связанных с миграцией больших объемов резервных копий, можно использовать сжатые резервные копии.

  • Убедитесь, что учетная запись службы, от имени которой выполняется исходный экземпляр SQL Server, имеет разрешения на чтение и запись для этой сетевой папки SMB, содержащей файлы резервной копии базы данных.

  • При переносе базы данных, защищенной прозрачным шифрованием данных (TDE), перед переносом сертификата из исходного экземпляра SQL Server в SQL Server на виртуальной машине Azure перед переносом данных. Дополнительные сведения см. в разделе "Перемещение защищенной базы данных TDE в другой SQL Server".

    Подсказка

    Если база данных содержит конфиденциальные данные, защищенные Always Encrypted, процесс миграции автоматически переносит ключи Always Encrypted в целевой экземпляр SQL Server на виртуальной машине Azure.

  • Если резервные копии базы данных находятся в сетевой общей папке, предоставьте компьютер, на котором можно установить локальную среду выполнения интеграции для доступа к резервным копиям базы данных и перенести их. Мастер миграции предоставляет ссылку скачивания и ключи проверки подлинности для скачивания и установки локальной среды выполнения интеграции.

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

    Доменные имена Исходящий порт Description
    Общедоступное облако: {datafactory}.{region}.datafactory.azure.net
    или*.frontend.clouddatahub.net

    Azure для государственных организаций: {datafactory}.{region}.datafactory.azure.us
    Microsoft Azure, управляемый 21Vianet: {datafactory}.{region}.datafactory.azure.cn
    443 Требуется локальной средой выполнения интеграции для подключения к Azure DMS.
    Для только что созданной фабрики данных в общедоступном облаке найдите полное доменное имя (FQDN) из ключа локальной среды выполнения интеграции в формате {datafactory}.{region}.datafactory.azure.net.
    Для существующей фабрики данных, если полное доменное имя не отображается в локальном ключе интеграции, используйте *.frontend.clouddatahub.net вместо этого.
    download.microsoft.com 443 Требуется локальной среде выполнения интеграции для скачивания обновлений. Если отключить автоматическое обновление, можно пропустить настройку этого домена.
    *.core.windows.net 443 Используется локальной средой выполнения интеграции, которая подключается к учетной записи хранения Azure для отправки резервных копий базы данных из сетевого ресурса.

    Подсказка

    Если вы уже храните файлы резервной копии базы данных в учетной записи хранения Azure, во время миграции не требуется локальная среда выполнения интеграции.

  • Если вы используете локальную среду выполнения интеграции, убедитесь, что компьютер, на котором установлена среда выполнения, может подключиться к исходному экземпляру SQL Server и сетевой общей папке, на которой находятся файлы резервного копирования.

  • Включите исходящий порт 445, чтобы разрешить доступ к сетевой общей папке. Дополнительные сведения см . в рекомендациях по использованию локальной среды выполнения интеграции.

  • Если вы используете Azure DMS впервые, убедитесь, что Microsoft.DataMigrationпоставщик ресурсов зарегистрирован в вашей подписке.

Запуск новой миграции

В этом руководстве описывается автономная миграция с SQL Server на SQL Server на виртуальной машине Azure.

Чтобы начать новую миграцию, выполните приведенные далее действия.

  1. Перейдите в Службу azure Database Migration Service на портале Azure. Используйте +Create для создания нового экземпляра Database Migration Service или выбора существующего экземпляра. Затем перейдите к экземпляру Database Migration Service.

  2. На панели "Обзор " экземпляра Azure DMS выберите "Создать миграцию".

  3. В разделе "Выбор нового сценария миграции " выберите исходный, целевой тип сервера, расположение хранилища файлов резервного копирования, режим миграции в качестве автономной миграции и нажмите кнопку "Выбрать".

    Резервные копии базы данных могут находиться в локальной сетевой папке или в контейнере BLOB-объектов службы хранилища Azure.

    Снимок экрана: новый сценарий миграции.

    В автономном режиме миграции исходная база данных SQL Server не должна использоваться для действия записи, а файлы резервного копирования базы данных восстанавливаются в целевом экземпляре SQL Server на виртуальной машине Azure. Время простоя приложения сохраняется с начала процесса миграции до его завершения.

  4. В мастере миграции BLOB-объектов виртуальной машины SQL Azure в Интернете выполните следующие действия.

    1. На вкладке "Сведения о источнике" введите сведения о исходном экземпляре SQL Server, а затем нажмите кнопку "Далее: подключиться к исходному SQL Server".

    2. На вкладке "Выбор целевого объекта миграции " введите сведения о подписке, группе ресурсов и целевой виртуальной машине SQL Server. Затем нажмите кнопку Далее: конфигурация источника данных.

      Снимок экрана: мастер миграции blob-объектов в автономном режиме.

      • Всегда используйте выделенную учетную запись хранения для миграции. Совместное использование с другими рабочими нагрузками может привести к конфликтам и рискам безопасности.

      • После завершения миграции измените ключ учетной записи хранения, чтобы обеспечить безопасность резервных копий или удалите учетную запись хранения, если она больше не нужна.

      • Azure DMS не создает резервные копии базы данных и не инициирует резервные копии базы данных от вашего имени. Вместо этого служба использует существующие файлы резервной копии базы данных для миграции.

      • Если файлы резервной копии базы данных находятся в сетевом ресурсе SMB, создайте учетную запись хранения Azure , которая позволяет Azure DMS отправлять файлы резервной копии базы данных и переносить базы данных. Создайте учетную запись хранения Azure в том же регионе, где создается экземпляр Azure DMS.

      • Вы можете записать каждую резервную копию в отдельный файл резервного копирования или в несколько файлов резервного копирования. Добавление нескольких резервных копий, таких как полные и журналы транзакций, в один носитель резервных копий не поддерживается.

      • Чтобы снизить вероятность возникновения потенциальных проблем, связанных с миграцией больших объемов резервных копий, можно использовать сжатые резервные копии.

    3. На шаге конфигурации источника данных выберите расположение резервных копий базы данных. Резервные копии базы данных могут находиться в локальной сетевой папке или в контейнере BLOB-объектов службы хранилища Azure.

      Если вы предоставляете резервные копии базы данных в локальной сетевой папке, настройте локальную среду выполнения интеграции на следующем шаге мастера. Для доступа к резервным копиям исходной базы данных требуется локальная среда выполнения интеграции, проверка допустимости набора резервных копий и отправка резервных копий в учетную запись хранения Azure. Если резервные копии базы данных уже находятся в контейнере BLOB-объектов хранилища Azure, не требуется локальная среда выполнения интеграции.

      • Для резервных копий, хранящихся в контейнере BLOB-объектов службы хранилища Azure, введите или выберите следующие сведения:

        Имя Description
        Группа ресурсов Группа ресурсов, в которой находятся файлы резервного копирования.
        Сведения об учетной записи хранения Учетная запись хранения, в которой находятся файлы резервного копирования.
        Контейнер BLOB Контейнер BLOB-объектов, в котором находятся файлы резервного копирования.
        Folder Папка, в которой находятся файлы резервного копирования.
        Последний файл резервного копирования Имя файла последней резервной копии перенесенной базы данных.
        Имя целевой базы данных Имя целевой базы данных можно изменить во время миграции.

        Если включена функция проверки цикла, а исходный SQL Server и общий файловый ресурс находятся на одном компьютере, источник не может получить доступ к общей папке с полным доменным именем. Чтобы устранить эту проблему, отключите функцию проверки цикла.

        Снимок экрана: конфигурация источника данных мастера автономной миграции BLOB-объектов.

      • Для резервных копий, расположенных в общей сетевой папке, введите следующие дополнительные сведения на соответствующих страницах.

        Имя Description
        Имя исходного сервера Полное доменное имя или IP-адрес исходного сервера. Убедитесь, что учетная запись службы, на котором запущен исходный экземпляр SQL Server, имеет права чтения в сетевой папке.
        Тип проверки подлинности Выберите тип проверки подлинности: SQL или Windows
        Исходные учетные данные — имя пользователя Учетные данные (проверка подлинности Windows и SQL) для подключения к исходному экземпляру SQL Server и проверки файлов резервной копии.
        Исходные учетные данные — пароль Учетные данные (проверка подлинности Windows и SQL) для подключения к исходному экземпляру SQL Server и проверки файлов резервной копии.
        Расположение общей сетевой папки, содержащей резервные копии Расположение общей сетевой папки, содержащей файлы полных резервных копий и резервных копий журналов транзакций. Процесс миграции автоматически игнорирует любые недопустимые файлы или файлы резервной копии в сетевом ресурсе, которые не принадлежат допустимому набору резервных копий.
        Учетная запись пользователя Windows с доступом на чтение к общей сетевой папке Учетные данные Windows (имя пользователя), имеющие доступ на чтение к общей сетевой папке для получения файлов резервных копий.
        Пароль Учетные данные Windows (пароль), имеющие доступ на чтение к общей сетевой папке для получения файлов резервных копий.
        Имя целевой базы данных Имя целевой базы данных можно изменить во время миграции.

Сценарии хранения резервных копий

Расширение миграции SQL Azure для Azure Data Studio не требует конкретных конфигураций в сетевых параметрах учетной записи хранения Azure для переноса баз данных SQL Server в Azure.

Убедитесь, что ресурсы могут получить доступ к учетной записи хранения Azure. В зависимости от расположения резервного копирования базы данных и требуемых параметров сети учетной записи хранения см. в следующей таблице для различных сценариев миграции и конфигураций сети:

Scenario Сетевая папка SMB контейнер учетной записи служба хранилища Azure
Включена из всех сетей Никаких дополнительных шагов Никаких дополнительных шагов
Включено из выбранных виртуальных сетей и IP-адресов Локальная локальная локальная среда выполнения интеграции (SHIR) Резервные копии, хранящиеся в контейнере службы хранилища Azure
Включена из выбранных виртуальных сетей и IP-адресов + частная конечная точка Локальная среда выполнения интеграции виртуальной машины Azure (SHIR) Резервные копии, хранящиеся в контейнере службы хранилища Azure (частная конечная точка)

Локальная локальная локальная среда выполнения интеграции (SHIR)

Если установить SHIR в локальной сети, выполните следующие действия.

  1. Подключитесь к порталу Azure с компьютера SHIR.

  2. Откройте учетную запись хранения Azure и перейдите на панель "Сеть ".

  3. Убедитесь, что для общедоступного сетевого доступа задано значение "Включено" из выбранных виртуальных сетей и IP-адресов.

  4. В разделе "Брандмауэр" установите флажок "Добавить IP-адрес клиента ".

  5. Введите IP-адрес клиента хост-компьютера и нажмите кнопку "Сохранить".

Создание экземпляра Database Migration Service

Шаг 1. В портал Azure перейдите на страницу Azure Database Migration Service. Создайте новый экземпляр Azure Database Migration Service или повторно используйте существующий экземпляр, созданный ранее.

Использование существующего экземпляра Database Migration Service

Чтобы использовать существующий экземпляр Database Migration Service:

  • В портал Azure в разделе Azure Database Migration Services выберите существующий экземпляр Database Migration Service, который вы хотите использовать, гарантируя, что он присутствует в правильной группе ресурсов и регионе.

    Снимок экрана: обзор Database Migration Service.

Создание нового экземпляра Database Migration Service

Чтобы создать новый экземпляр Database Migration Service, выполните приведенные действия.

  1. В портал Azure в разделе Azure Database Migration Service нажмите кнопку "Создать".

    Снимок экрана: параметр создания Database Migration Service.

  2. В разделе "Выбор сценария миграции" и Database Migration Service выберите нужные входные данные, такие как тип исходного и целевого сервера, выберите Database Migration Service и нажмите кнопку "Выбрать".

    Снимок экрана: сценарии миграции Database Migration Service.

  3. На следующем экране Создайте службу миграции данных, выберите подписку и группу ресурсов, а затем выберите расположение и введите имя Службы Database Migration Service. Выберите Review + Create. При этом создается служба Azure Database Migration Service.

    Снимок экрана, на котором показаны необходимые сведения о входных данных Database Migration Service.

  4. Если требуется локальная среда выполнения интеграции (SHIR), на странице обзора службы Database Migration Service и в разделе "Параметры", выберите среду выполнения интеграции и выполните следующие действия:

    1. Выберите "Настройка среды выполнения интеграции" и выберите ссылку "Скачать и установить среду выполнения интеграции", чтобы открыть ссылку загрузки в веб-браузере. Скачайте среду выполнения интеграции и установите ее на компьютере, который соответствует предварительным требованиям для подключения к исходному экземпляру SQL Server. Дополнительные сведения см . в рекомендациях SHIR.

      Снимок экрана: ссылка

      После завершения установки Диспетчер конфигурации среды выполнения интеграции Майкрософт автоматически открывается, чтобы начать процесс регистрации.

    2. В таблице ключей проверки подлинности скопируйте один из ключей проверки подлинности, предоставляемых мастером, и вставьте его в Диспетчер конфигурации среды выполнения интеграции Майкрософт.

      Снимок экрана: таблица ключа проверки подлинности в мастере.

      Если ключ проверки подлинности действителен, в Configuration Manager среды выполнения интеграции появится зеленый значок проверки. Зеленая проверка указывает, что вы можете продолжить регистрацию.

      После регистрации локальной среды выполнения интеграции закройте Microsoft Integration Runtime Configuration Manager. Может потребоваться несколько минут, чтобы отразить сведения о узле портал Azure для Database Migration Service в разделе > интеграции параметров".

      Снимок экрана: состояние SHIR в портал Azure.

      Замечание

      Дополнительные сведения о локальной среде выполнения интеграции см. в статье "Создание и настройка локальной среды выполнения интеграции".

Запуск миграции базы данных

На вкладке сводки по миграции базы данных просмотрите сведения, а затем нажмите кнопку "Начать миграцию". Служба запускает миграцию базы данных и автоматически возвращает вас на панель мониторинга Azure DMS.

Снимок экрана: сводка по миграции данных в автономном режиме мастера миграции BLOB-объектов.

Мониторинг миграции базы данных

  1. Чтобы отслеживать миграцию базы данных, на панели "Обзор " экземпляра DMS выберите "Мониторинг миграций".

  2. На вкладке "Миграции " можно отслеживать миграции, выполняемые, завершенные и неудачные (если таковые имеются) или просматривать все миграции баз данных. В строке меню выберите "Обновить ", чтобы обновить состояние миграции.

    Снимок экрана: мониторинг миграции.

Azure DMS возвращает последнее известное состояние миграции при каждом обновлении состояния миграции. В следующей таблице описаны возможные состояния:

Состояние Description
Прибыл Файл резервной копии прибыл в исходное расположение резервного копирования и был проверен.
Загрузки Среда выполнения интеграции отправляет файл резервной копии в хранилище Azure.
Загружены Файл резервной копии был отправлен в хранилище Azure.
Восстановление Служба восстанавливает файл резервной копии в SQL Server на виртуальной машине Azure.
Восстановленный Файл резервной копии был успешно восстановлен на SQL Server на виртуальной машине Azure.
Отменено Процесс миграции был отменен.
Игнорировать Файл резервной копии был проигнорирован, так как он не принадлежит допустимой цепочке резервного копирования базы данных.

После восстановления всех резервных копий базы данных на экземпляре SQL Server на виртуальной машине Azure Azure DMS инициирует автоматическую миграцию, чтобы убедиться, что перенесенная база данных готова к использованию. Состояние миграции изменяется с "Выполняется" на "Успешно".

Ограничения

При переносе одной базы данных необходимо поместить резервные копии базы данных в структуру неструктурированных файлов в папку базы данных (включая корневую папку контейнера). Не удается вложить эти папки, так как вложение не поддерживается.

При переносе нескольких баз данных с помощью одного и того же контейнера Хранилище BLOB-объектов Azure необходимо разместить файлы резервного копирования для разных баз данных в отдельных папках в контейнере.

Вы не можете перезаписать существующие базы данных в целевом SQL Server на виртуальной машине Azure с помощью DMS.

Azure DMS не поддерживает настройку высокой доступности и аварийного восстановления в целевом объекте для сопоставления исходной топологии.

Следующие объекты сервера не поддерживаются:

  • задания агента SQL Server
  • Credentials
  • Пакеты служб SQL Server Integration Services (SSIS)
  • Аудит сервера

Вы не можете использовать существующую локальную среду выполнения интеграции, созданную из фабрики данных Azure (ADF) для миграции баз данных с DMS. Изначально необходимо создать локальную среду выполнения интеграции с помощью расширения миграции SQL Azure в Azure Data Studio. Его можно использовать повторно для дальнейшей миграции баз данных.

Виртуальные машины с целевыми версиями SQL Server 2008 и более ранними версиями не поддерживаются при миграции на SQL Server на виртуальной машине Azure.

Если вы используете виртуальную машину с SQL Server 2012 или SQL Server 2014, необходимо сохранить файлы резервного копирования базы данных-источника в контейнере BLOB-объектов службы хранилища Azure, а не использовать параметр сетевого ресурса. Сохраните файлы резервной копии в виде страничных BLOB-объектов, так как блочные BLOB-объекты поддерживаются только в SQL Server 2016 и более поздних версиях.

Необходимо убедиться, что расширение агента IaaS SQL Server в целевой виртуальной машине Azure находится в полном режиме , а не в упрощенном режиме.

Миграция на виртуальную машину SQL Azure с помощью DMS использует агент IaaS SQL Server внутренне. Расширение агента IaaS SQL Server поддерживает только управление экземпляром сервера по умолчанию или одним именованным экземпляром.

Вы можете перенести не более 100 баз данных на ту же виртуальную машину Azure, что и целевой объект, используя одну или несколько миграций одновременно. Кроме того, после завершения миграции с 100 базами данных подождите не менее 30 минут, прежде чем начать новую миграцию на тот же СЕРВЕР SQL Server на виртуальной машине Azure, что и целевой объект. Кроме того, каждая операция миграции (запуск миграции, переключение) для каждой базы данных занимает несколько минут последовательно. Например, для миграции 100 баз данных может потребоваться примерно 200 (2 x 100) минут для создания очередей миграции и примерно 100 (1 x 100) минут, чтобы сократить все 100 баз данных (за исключением времени резервного копирования и восстановления). Поэтому миграция становится медленнее по мере увеличения числа баз данных. Необходимо заранее запланировать более длительное окно миграции на основе тщательного тестирования миграции или секционировать большое количество баз данных в пакеты при их переносе на SQL Server на виртуальной машине Azure.

Помимо настройки сети или брандмауэра учетной записи хранения Azure, чтобы разрешить виртуальной машине доступ к файлам резервных копий, также необходимо настроить сеть или брандмауэр SQL Server на виртуальной машине Azure, чтобы разрешить исходящее подключение к учетной записи хранения.

При выполнении миграции SQL Server необходимо сохранить целевую виртуальную машину Azure. Кроме того, при создании новой миграции, отработки отказа или отмене миграции.

Возможные сообщения об ошибках

Сбой входа для пользователя NT Service\SQLIaaSExtensionQuery

Ошибка: Login failed for user 'NT Service\SQLIaaSExtensionQuery

Причина. Экземпляр SQL Server находится в однопользовательском режиме. Одна из возможных причин заключается в том, что целевая виртуальная машина SQL Server находится в режиме обновления.

Решение. Дождитесь выхода целевой виртуальной машины SQL Server в режим обновления и снова запустите миграцию.

Не удалось создать задание восстановления

Ошибка: Ext_RestoreSettingsError, message: Failed to create restore job.;Cannot create file 'F:\data\XXX.mdf' because it already exists.

Решение. Подключитесь к целевой виртуальной машине SQL Server и удалите XXX.mdf файл. Затем снова запустите миграцию.