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

Применимо к: SQL Server на виртуальной машине Azure

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

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

  • SQL Server на виртуальных машинах (ВМ).
  • Amazon Web Services (AWS) EC2.
  • Служба реляционной базы данных Amazon (AWS RDS).
  • Compute Engine (Google Cloud Platform — GCP).

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

Схема, на которой показан поток процесса миграции.

Предварительные требования

Для перехода на SQL Server на виртуальных машинах Azure требуются следующие ресурсы.

Подготовка к миграции

Перед началом миграции необходимо найти топологию среды SQL и оценить допустимость предполагаемой миграции.

Обнаружить

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

Важно!

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

Дополнительные средства обнаружения см. в службах и средствах, доступных для сценариев переноса данных.

Оценка

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

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

Примечание

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

Оценка пользовательских баз данных

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

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

Важно!

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

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

Оценка приложений

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

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

Оценка в масштабе

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

Для получения сводки отчетов в больших пространствах теперь можно также консолидировать оценки Помощника по миграции данных в службе Миграция Azure.

Обновление баз данных с помощью Помощника по миграции данных

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

Для устаревших функций можно выбрать "Запуск пользовательских баз данных" в исходном режиме совместимости, если вы хотите избежать их изменения и ускорить миграцию. Это действие предотвратит Обновление совместимости базы данных до тех пор, пока не будут устранены устаревшие элементы.

Внимание!

Не все версии SQL Server поддерживают все режимы совместимости. Убедитесь, что целевая версия SQL Server поддерживает выбранную совместимость с базой данных. Например, SQL Server 2019 не поддерживает базы данных с совместимостью уровня 90 (то есть SQL Server 2005). Эти базы данных потребуют, по крайней мере, обновления до уровня совместимости 100.

Миграция

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

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

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

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

  1. Скачайте и установите Azure Data Studio и расширение миграции Azure SQL.
  2. Запустите мастер "Миграция в Azure SQL" в расширении в Azure Data Studio.
  3. Выберите базы данных для оценки и проверьте готовность к миграции или проблемы (при их наличии). Вы также можете собрать данные производительности и получить рекомендацию Azure по выбору подходящего размера.
  4. Выберите свою учетную запись Azure и целевой экземпляр SQL Server на виртуальных машинах Azure в подписке.
  5. Выберите расположение резервных копий базы данных. Резервные копии базы данных могут находиться либо в локальной сетевой папке, либо в контейнере больших двоичных объектов службы хранилища Azure.
  6. Создайте экземпляр Azure Database Migration Service с помощью мастера в Azure Data Studio. Если вы ранее создали экземпляр Azure Database Migration Service с помощью 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.

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

Для комфортной работы с пользовательскими базами данных после миграции могут потребоваться дополнительные объекты 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. В этой процедуре используется поставщик ресурсов виртуальной машины SQL.
Объекты сервера Устройства резервного копирования Замените на резервную копию базы данных с помощью Azure Backup или создайте резервные копии в службе хранилища Azure (SQL Server 2012 SP1 CU2+). В этой процедуре используется поставщик ресурсов виртуальной машины 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.

Оптимизация

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

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

Дальнейшие действия