Руководство по миграции: перенос данных из SQL Server в SQL Server на виртуальных машинах Azure

Область применения: SQL Server в Azure Виртуальные машины

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

Прежде чем продолжить, выполните действия перед миграцией .

Миграция

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

В следующих разделах приведены варианты выполнения миграции в порядке предпочтения.

Миграция с использованием расширения миграции Azure SQL для Azure Data Studio (минимальное время простоя)

Чтобы выполнить миграцию с минимальным временем простоя с помощью Azure Data Studio, следуйте приведенным ниже общим инструкциям. Подробное пошаговое руководство см. в руководстве по переносу SQL Server на SQL Server в Azure Виртуальные машины с помощью DMS:

  1. Скачайте и установите Azure Data Studio и расширение миграции Azure SQL.
  2. Запустите мастер "Миграция в Azure SQL" в расширении в Azure Data Studio.
  3. Выберите базы данных для оценки и проверьте готовность к миграции или проблемы (при их наличии). Вы также можете собрать данные производительности и получить рекомендацию Azure по выбору подходящего размера.
  4. Выберите свою учетную запись Azure и целевой экземпляр SQL Server на виртуальных машинах Azure в подписке.
  5. Выберите расположение резервных копий базы данных. Резервные копии базы данных могут находиться в локальной сетевой папке или в контейнере Хранилище BLOB-объектов Azure.
  6. Создайте экземпляр Azure Database Migration Service с помощью мастера в Azure Data Studio. Если вы ранее создали Службу миграции базы данных Azure с помощью Azure Data Studio, вы можете повторно использовать то же самое при необходимости.
  7. Необязательно. Если резервные копии находятся в локальной сетевой папке, скачайте локальную среду выполнения интеграции и установите ее на компьютере, который может подключаться к исходному экземпляру SQL Server и расположению, содержащему файлы резервной копии.
  8. Начните миграцию базы данных и отслеживайте ход выполнения в Azure Data Studio. Вы также можете отслеживать ход выполнения в разделе ресурса Azure Database Migration Service на портале Azure.
  9. Выполните прямую миграцию.
    1. Остановите все входящие транзакции в исходной базе данных.
    2. Внесите изменения в конфигурацию приложения, указав целевую базу данных в SQL Server на виртуальной машине Azure.
    3. Перенесите все конечные фрагменты резервных копий журнала исходной базы данных в указанное расположение резервной копии.
    4. Убедитесь, что все резервные копии базы данных имеют состояние Восстановлено на странице сведений о мониторинге.
    5. На странице сведений о мониторинге щелкните Выполнить переключение.

Резервное копирование и восстановление

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

  1. Настройте подключение к SQL Server на виртуальных машинах Azure в соответствии с вашими требованиями. Дополнительные сведения см. в статье "Подключение к виртуальной машине SQL Server в Azure".
  2. Приостановите или остановите все приложения, использующие базы данных, предназначенные для миграции.
  3. Убедитесь, что пользовательские базы данных неактивны, воспользовавшись режимом одного пользователя.
  4. Создайте полную резервную копию базы данных в локальном расположении.
  5. Скопируйте локальные файлы резервных копий на виртуальную машину с помощью удаленного рабочего стола, Azure Data Explorer или служебной программы командной строки AzCopy. (Рекомендуется использовать резервные копии размером более 2 ТБ.)
  6. Восстановите резервные копии всей базы данных в SQL Server на виртуальных машинах Azure.

Отключение и подключение с использованием URL-адреса

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

  1. Отключите файлы базы данных от локального экземпляра базы данных.
  2. Скопируйте отсоединяемые файлы базы данных в хранилище BLOB-объектов Azure с помощью служебной программы командной строки AzCopy.
  3. Подключите файлы базы данных из URL-адреса Azure к экземпляру SQL Server в виртуальной машине Azure.

Преобразование в виртуальную машину, отправка по URL-адресу и развертывание в качестве новой виртуальной машины

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

  1. Преобразуйте физические компьютеры или виртуальные машины в виртуальные жесткие диски Hyper-V.
  2. Отправьте VHD-файлы в службу хранилища Azure с помощью командлета Add-AzureVHD.
  3. Разверните новую виртуальную машину на базе отправленного VHD-файла.

Примечание.

Чтобы перенести все приложение, рассмотрите возможность использования Azure Site Recovery.

доставка журналов;

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

Дополнительные сведения см. в разделе "Таблицы доставки журналов" и "Хранимые процедуры".

Отправка жестких дисков

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

Миграция объектов за пределы пользовательских баз данных

Для комфортной работы с пользовательскими базами данных после миграции могут потребоваться дополнительные объекты SQL Server.

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

Функция Компонент Способы миграции
Базы данных Модель Написание сценариев в SQL Server Management Studio.
База данных tempdb Планируйте переход tempdb на временный диск виртуальной машины Azure (SSD) для повышения производительности. Обязательно выберите размер виртуальной машины с достаточным локальным SSD для размещения.tempdb
Пользовательские базы данных с FileStream Используйте методы резервного копирования и восстановления для миграции. Помощник по миграции данных не поддерживает базы данных с FileStream.
Безопасность Имена входа SQL Server и Windows Используйте Помощник по миграции данных для переноса имен входа пользователей.
Роли SQL Server Написание сценариев в SQL Server Management Studio.
Поставщики служб шифрования Рекомендуемое преобразование для использования Azure Key Vault. В этой процедуре используется расширение агента IaaS SQL.
Объекты сервера Устройства резервного копирования Замените на резервную копию базы данных с помощью Azure Backup или создайте резервные копии в службе хранилища Azure (SQL Server 2012 SP1 CU2+). В этой процедуре используется расширение агента IaaS SQL.
Связанные серверы Написание сценариев в SQL Server Management Studio.
Триггеры сервера Написание сценариев в SQL Server Management Studio.
Репликация Локальные публикации Написание сценариев в SQL Server Management Studio.
Локальные подписчики Написание сценариев в SQL Server Management Studio.
PolyBase PolyBase Написание сценариев в SQL Server Management Studio.
Управление Database Mail Написание сценариев в SQL Server Management Studio.
Агент SQL Server Работы Написание сценариев в SQL Server Management Studio.
видны узлы Написание сценариев в SQL Server Management Studio.
Операторы Написание сценариев в SQL Server Management Studio.
Прокси Написание сценариев в SQL Server Management Studio.
Операционная система Файлы, общие папки Запишите любые другие файлы или общие папки, используемые серверами SQL, и выполните репликацию на целевой объект виртуальных машин Azure.

После миграции

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

Исправление приложений

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

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

Выполнение тестов

Подход теста к миграции базы данных состоит из следующих действий:

  1. Разработка проверочных тестов. Чтобы протестировать перенос базы данных, необходимо использовать SQL-запросы. Создайте проверочные запросы, которые будут выполняться в исходной и целевой базах данных. Проверочные запросы должны охватывать всю определенную ранее область.
  2. Настройка тестовой среды. Тестовая среда должна содержать копию исходной и целевой баз данных. Не забудьте изолировать тестовую среду.
  3. Выполнение проверочных тестов. Выполните проверочные тесты в исходной и целевой базах данных, а затем проанализируйте результаты.
  4. Выполнение тестов производительности: запустите тесты производительности для исходной и целевой баз данных, а затем проанализируйте и сравните результаты.

Совет

Используйте Database Experimentation Assistant, чтобы помочь в оценке производительности целевого сервера SQL.

Оптимизация

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

Для получения дополнительных сведений об этих проблемах и мерах по их устранению см. следующие разделы.