Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure Database Migration Service можно использовать с помощью расширения миграции SQL Azure для Azure Data Studio или портала Azure для переноса баз данных из локального экземпляра SQL Server в базу данных SQL Azure (в автономном режиме).
В этом руководстве описано, как перенести образец AdventureWorks2022
базы данных из локального экземпляра SQL Server в базу данных SQL Azure с помощью Database Migration Service. В этом руководстве используется режим автономной миграции, который учитывает допустимое время простоя во время процесса миграции.
В этом руководстве описано следующее:
- Откройте мастер миграции в SQL Azure в Azure Data Studio
- Запуск оценки исходных баз данных SQL Server
- Сбор данных о производительности из исходного экземпляра SQL Server
- Получите рекомендацию по номеру SKU База данных SQL Azure, который лучше всего подходит для рабочей нагрузки.
- Создание экземпляра Azure Database Migration Service
- Запуск миграции и мониторинг хода выполнения до завершения
Внимание
В настоящее время миграции по сети для целевых объектов Базы данных SQL Azure недоступны в Службе Azure Database Migration Service. При автономной миграции время простоя приложения начинается при запуске миграции. Тестирование автономной миграции рекомендуется определить, допустимо ли время простоя.
Варианты переноса
В следующем разделе объясняется, как использовать службу миграции баз данных Azure через расширение миграции SQL Azure или в портале Azure.
Необходимые компоненты
Чтобы завершить работу с этим руководством, вам потребуется следующее:
Установите расширение для миграции Azure SQL из Azure Data Studio Marketplace.
Убедитесь, что поставщик ресурсов Microsoft.DataMigration зарегистрирован в вашей подписке.
У вас есть учетная запись Azure, назначенная одной из следующих встроенных ролей:
- Участник целевой базы данных SQL Azure
- Роль читателя для группы ресурсов Azure, содержащей целевую базу данных SQL Azure
- Роль владельца или участника для подписки Azure (требуется при создании нового экземпляра Azure Database Migration Service)
В качестве альтернативы использованию одной из этих встроенных ролей можно назначить пользовательскую роль.
Внимание
Учетная запись Azure требуется только при настройке шагов миграции. Учетная запись Azure не требуется для оценки или просмотра рекомендаций Azure в мастере миграции в Azure Data Studio.
Создайте Базу данных SQL Azure целевую.
Убедитесь, что имя входа SQL Server, которое подключается к исходному экземпляру SQL Server, является членом роли db_datareader , а имя входа для целевого экземпляра SQL Server является членом роли db_owner .
Чтобы перенести схему базы данных из источника в целевую базу данных SQL Azure с помощью Database Migration Service, минимальная поддерживаемая версия SHIR должна быть 5.37 или выше.
Для миграции схемы минимальные разрешения на исходном SQL Server db_owner для доступа к базе данных и целевой базе данных SQL Azure, пользователь должен быть членом всех ролей уровня сервера в следующей таблице:
Роли | Описание |
---|---|
##MS_DatabaseManager## | Члены предопределенных ролей сервера ##MS_DatabaseManager## могут создавать и удалять базы данных. Участник роли ##MS_DatabaseManager###, которая создает базу данных, становится владельцем этой базы данных, что позволяет пользователю подключаться к этой базе данных в качестве пользователя dbo. Пользователь dbo имеет все разрешения в этой базе данных. Члены роли ##MS_DatabaseManager## не обязательно имеют разрешения на доступ к базам данных, которым они не принадлежат. Рекомендуется использовать эту роль сервера над ролью уровня базы данных dbmanager , которая существует в master базе данных. |
##MS_DatabaseConnector## | Члены предопределенных ролей сервера ##MS_DatabaseConnector## могут подключаться к любой базе данных, не требуя подключения учетной записи пользователя в базе данных. |
##MS_DefinitionReader## | Члены предопределенных ролей сервера ##MS_DefinitionReader## могут считывать все представления каталога, охватываемые **VIEW ANY DEFINITION в любой базе данных, в которой член этой роли имеет учетную запись пользователя. |
##MS_LoginManager## | Члены предопределенных ролей сервера ##MS_LoginManager## могут создавать и удалять имена входа. Рекомендуется использовать эту роль сервера над ролью уровня базы данных loginmanager , которая существует в master базе данных. |
Подготовка целевой базы данных SQL Azure
Чтобы создать имя входа и пользователя в целевой базе данных SQL Azure, выполните следующий сценарий в master
базе данных:
CREATE LOGIN testuser WITH PASSWORD = '<password>';
ALTER SERVER ROLE ##MS_DefinitionReader## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_DatabaseConnector## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_DatabaseManager## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_LoginManager## ADD MEMBER [testuser];
GO
CREATE USER testuser FOR LOGIN testuser;
EXECUTE sp_addRoleMember 'dbmanager', 'testuser';
EXECUTE sp_addRoleMember 'loginmanager', 'testuser';
Теперь можно перенести схему базы данных и данные с помощью Database Migration Service. Вы также можете использовать другие средства, такие как расширение dacpac SQL Server или расширение проектов баз данных SQL в Azure Data Studio, чтобы перенести схему перед выбором списка таблиц для миграции.
Примечание.
Если в целевом объекте базы данных SQL Azure отсутствуют таблицы или таблицы не выбраны перед началом миграции, кнопка "Далее " недоступна для запуска миграции. Если таблица не существует в целевом объекте, необходимо выбрать параметр миграции схемы, чтобы перейти вперед.
Откройте мастер миграции в SQL Azure в Azure Data Studio
Чтобы открыть мастер миграции в Azure SQL, выполните следующие действия.
В Azure Data Studio перейдите в раздел "Подключения". Выберите и подключитесь к локальному экземпляру SQL Server. Вы также можете подключиться к SQL Server на виртуальной машине Azure.
Щелкните правой кнопкой мыши подключение к серверу и выберите пункт "Управление".
В меню сервера в разделе "Общие" выберите "Миграция SQL Azure".
На панели мониторинга миграции SQL Azure выберите "Миграция в Azure SQL ", чтобы открыть мастер миграции.
На первой странице мастера запустите новый сеанс или возобновите ранее сохраненный сеанс.
Запуск оценки базы данных, сбор данных о производительности и получение рекомендаций Azure
На шаге 1. Базы данных для оценки в мастере миграции в SQL Azure выберите базы данных, которые необходимо оценить. Затем выберите Далее.
На шаге 2. Результаты оценки и рекомендации выполните следующие действия.
В разделе "Выбор целевого объекта SQL Azure" выберите База данных SQL Azure.
Выберите "Вид" или " Выбрать ", чтобы просмотреть результаты оценки.
В результатах оценки выберите базу данных и просмотрите отчет об оценке, чтобы убедиться, что проблемы не найдены.
Выберите " Получить рекомендацию Azure", чтобы открыть область рекомендаций.
Теперь выберите " Собрать данные о производительности". Выберите папку на локальном компьютере, чтобы сохранить журналы производительности, а затем нажмите кнопку "Пуск".
Azure Data Studio собирает данные о производительности, пока не остановите сбор данных или закройте Azure Data Studio.
Через 10 минут Azure Data Studio указывает, что рекомендация доступна для База данных SQL Azure. После создания первой рекомендации можно выбрать "Перезапустить сбор данных", чтобы продолжить процесс сбора данных и уточнить рекомендацию SKU. Расширенная оценка особенно полезна, если шаблоны использования зависят от времени.
В выбранном целевом объекте База данных SQL Azure выберите "Просмотреть сведения", чтобы открыть подробный отчет о рекомендации SKU:
В рекомендациях по базе данных SQL Azure просмотрите рекомендацию. Чтобы сохранить копию рекомендации, нажмите кнопку "Сохранить отчет о рекомендациях".
Нажмите кнопку "Закрыть", чтобы закрыть область рекомендаций.
Нажмите кнопку "Далее ", чтобы продолжить миграцию базы данных в мастере.
Настройка параметров миграции
На шаге 3. Целевой объект SQL Azure в мастере миграции в SQL Azure выполните следующие действия для целевого экземпляра базы данных SQL Azure:
Выберите учетную запись Azure, подписку Azure, регион Или расположение Azure и группу ресурсов, содержащую развертывание База данных SQL Azure.
В разделе "База данных SQL Azure" выберите целевой логический сервер Базы данных SQL Azure. Введите имя пользователя и пароль для развертывания целевой базы данных. Затем щелкните Connect (Подключиться). Введите учетные данные для проверки подключения к целевой базе данных.
Затем сопоставить исходную базу данных и целевую базу данных для миграции. Для целевой базы данных выберите целевой объект База данных SQL Azure. Затем нажмите кнопку "Далее ", чтобы перейти к следующему шагу мастера миграции.
На шаге 4. Режим миграции выберите "Автономная миграция" и нажмите кнопку "Далее".
На шаге 5. Настройка источника данных выполните следующие действия.
В разделе "Исходные учетные данные" введите исходные учетные данные SQL Server.
В разделе "Выбор таблиц" выберите значок "Изменить карандаш".
В разделе < выберите таблицы, >которые необходимо перенести в целевой объект. Столбец "Имеет строки" указывает, имеет ли целевая таблица строки в целевой базе данных. Можно выбрать одну или несколько таблиц. Затем нажмите кнопку "Обновить".
Список выбранных таблиц можно обновить в любое время перед началом миграции.
В следующем примере текстовый фильтр применяется для выбора таблиц, содержащих слово
Employee
. Выберите список таблиц в зависимости от потребностей миграции.
Просмотрите выбранные таблицы и нажмите кнопку "Далее ", чтобы перейти к следующему шагу мастера миграции.
Примечание.
Если таблицы не выбраны, или если имя пользователя и пароль не указаны, кнопка "Далее " недоступна для выбора.
Теперь можно перенести схему базы данных и данные как с помощью Database Migration Service. Кроме того, вы можете использовать такие средства, как расширение dacpac SQL Server или расширение База данных SQL Projects в Azure Data Studio, чтобы перенести схему перед выбором списка таблиц для миграции.
Создание экземпляра Database Migration Service
На шаге 6. Azure Database Migration Service в мастере миграции в SQL Azure создайте новый экземпляр Database Migration Service или повторно используйте существующий экземпляр, созданный ранее.
Примечание.
Если вы ранее создали экземпляр Database Migration Service с помощью портал Azure, вы не можете повторно использовать экземпляр в мастере миграции в Azure Data Studio. Можно повторно использовать экземпляр только в том случае, если вы создали экземпляр с помощью Azure Data Studio.
Использование существующего экземпляра Database Migration Service
Чтобы использовать существующий экземпляр Database Migration Service:
В группе ресурсов выберите группу ресурсов, содержащую существующий экземпляр Database Migration Service.
В Службе Azure Database Migration Service выберите существующий экземпляр Database Migration Service, который находится в выбранной группе ресурсов.
Выберите Далее.
Создание нового экземпляра Database Migration Service
Чтобы создать новый экземпляр Database Migration Service, выполните приведенные действия.
В группе ресурсов создайте новую группу ресурсов, чтобы содержать новый экземпляр Database Migration Service.
В разделе Azure Database Migration Service выберите "Создать".
В поле Create Azure Database Migration Service введите имя экземпляра Database Migration Service и нажмите кнопку "Создать".
В разделе "Настройка среды выполнения интеграции" выполните следующие действия.
Выберите ссылку "Скачать и установить среду выполнения интеграции", чтобы открыть ссылку скачивания в веб-браузере. Скачайте среду выполнения интеграции и установите ее на компьютере, который соответствует предварительным требованиям для подключения к исходному экземпляру SQL Server.
После завершения установки Диспетчер конфигурации среды выполнения интеграции Майкрософт автоматически открывается, чтобы начать процесс регистрации.
В таблице ключей проверки подлинности скопируйте один из ключей проверки подлинности, предоставляемых в мастере, и вставьте его в Azure Data Studio.
Если ключ проверки подлинности действителен, в Configuration Manager среды выполнения интеграции появится зеленый значок проверки. Зеленая проверка указывает, что вы можете продолжить регистрацию.
После регистрации локальной среды выполнения интеграции закройте Microsoft Integration Runtime Configuration Manager.
Примечание.
Дополнительные сведения о локальной среде выполнения интеграции см. в статье "Создание и настройка локальной среды выполнения интеграции".
В разделе "Создание Azure Database Migration Service " в Azure Data Studio выберите тестовое подключение , чтобы убедиться, что созданный экземпляр Database Migration Service подключен к только что зарегистрированной локальной среде выполнения интеграции.
Вернитесь в мастер миграции в Azure Data Studio.
Запуск миграции базы данных
На шаге 7. Сводка в мастере миграции в SQL Azure просмотрите созданную конфигурацию и нажмите кнопку "Начать миграцию", чтобы начать миграцию базы данных.
Мониторинг миграции базы данных
В Azure Data Studio в меню сервера в разделе "Общие" выберите "Миграция SQL Azure", чтобы перейти на панель мониторинга для миграции База данных SQL Azure.
В разделе "Состояние миграции базы данных" можно отслеживать миграции, выполняемые, завершенные и неудачные (если таковые имеются) или просматривать все миграции баз данных.
Чтобы просмотреть активные миграции, выберите миграцию базы данных.
Чтобы получить дополнительные сведения о конкретной миграции, выберите имя базы данных.
Database Migration Service возвращает последнее известное состояние миграции при каждом обновлении состояния миграции. В следующей таблице описаны возможные состояния:
Состояние Описание Подготовка к копированию Служба отключает автостаты, триггеры и индексы в целевой таблице. Копирование Данные копируются из исходной базы данных в целевую базу данных. Копирование завершено Копирование данных завершено. Служба ожидает завершения копирования других таблиц, чтобы начать окончательные шаги, чтобы вернуть таблицы в исходную схему. Перестроение индексов Служба перестраивает индексы в целевых таблицах. Успешно Все данные копируются и индексы перестроены. Проверьте страницу сведений о миграции, чтобы просмотреть текущее состояние каждой базы данных.
Ниже приведен пример миграции
AdventureWorks2022
базы данных с состоянием создания:В строке меню выберите "Обновить ", чтобы обновить состояние миграции.
После обновления состояния миграции обновленный статус для примера
AdventureWorks2022
миграции базы данных выполняется:Выберите имя базы данных, чтобы открыть представление таблицы. В этом представлении отображается текущее состояние миграции, количество таблиц, которые в настоящее время находятся в этом состоянии, и подробное состояние каждой таблицы.
Когда все данные таблицы переносятся в целевой объект База данных SQL Azure, Database Migration Service обновляет состояние миграции от "Выполняется до успешно".
Примечание.
Database Migration Service оптимизирует миграцию, пропуская таблицы без данных (0 строк). Таблицы, у которых нет данных, не отображаются в списке, даже если при создании миграции выбраны таблицы.
Вы завершили миграцию в База данных SQL Azure. Мы рекомендуем вам пройти ряд задач после миграции, чтобы гарантировать, что все функции плавно и эффективно.
Внимание
Не забудьте воспользоваться расширенными облачными функциями База данных SQL Azure. Эти функции включают встроенную высокую доступность, обнаружение угроз и мониторинг и настройку рабочей нагрузки.
Ограничения
База данных SQL Azure автономная миграция использует конвейеры Фабрика данных Azure (ADF) для перемещения данных и поэтому соблюдают ограничения ADF. Соответствующий ADF создается при создании службы миграции базы данных. Таким образом, ограничения фабрики применяются для каждой службы.
- Компьютер, на котором установлен SHIR, выступает в качестве вычислительных ресурсов для миграции. Убедитесь, что этот компьютер может обрабатывать загрузку ЦП и памяти копирования данных. Дополнительные сведения см. в статье "Создание и настройка локальной среды выполнения интеграции".
- 100 000 таблиц на одну базу данных.
- 10 000 одновременных миграций баз данных на службу.
- Скорость миграции сильно зависит от целевого База данных SQL Azure SKU и локального узла среды выполнения интеграции.
- База данных SQL Azure миграция плохо масштабируется с номерами таблиц из-за затрат на ADF при запуске действий. Если база данных содержит тысячи таблиц, процесс запуска каждой таблицы может занять несколько секунд, даже если они состоят из одной строки с 1 битом данных.
- База данных SQL Azure имена таблиц с двойными байтами в настоящее время не поддерживаются для миграции. Устранение рисков — переименование таблиц перед миграцией; после успешной миграции их можно изменить на исходные имена.
- Таблицы с большими столбцами BLOB-объектов могут завершиться ошибкой из-за времени ожидания.
- Имена баз данных с зарезервированными SQL Server в настоящее время не поддерживаются.
- Имена баз данных, включающие запятую, в настоящее время не поддерживаются.
- Вычисляемые столбцы не переносятся.
- Столбцы в исходной базе данных, имеющие ограничения по умолчанию и содержащие
NULL
значения, переносятся с определенными значениями по умолчанию в целевой базе данных SQL Azure, а не сохраняют NULLs.