Устранение распространенных проблем и ошибок Azure Database Migration Service

В этой статье описаны некоторые распространенные проблемы и ошибки, которые Azure Database Migration Service могут быть доступны пользователям. В этой статье также содержатся сведения о том, как устранить эти проблемы и ошибки.

Действие миграции все еще находится в очереди

При создании новых действий в проекте Azure Database Migration Service действия остаются в очереди.

Причина Решение
Эта проблема возникает, когда экземпляр Azure Database Migration Service достигает максимума мощностей по обработке текущих задач, выполняемых параллельно. Любое новое действие помещается в очередь до тех пор, пока мощности не станут доступны. Проверка, что экземпляр службы миграции данных выполняет действия между проектами. Можно продолжить создание новых действий, которые будут автоматически добавляться в очередь для выполнения. Как только все имеющиеся действия будут выполнены, начинается следующее действие в очереди, и состояние меняется на состояние выполнения автоматически. Вам не нужно предпринимать никаких дополнительных действий, чтобы запустить миграцию действия в очереди.

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

Следующая ошибка возникает при создании действия для проекта миграции базы данных для перемещения в Базу данных SQL Azure или Управляемый экземпляр Azure SQL.

  • Ошибка: ошибка проверки параметров миграции "errorDetail":"More than max number '4' objects of 'Databases' has been selected for migration." ("Для миграции было выбрано более 4 объектов "Баз данных", что превышает макс. допустимое количество").
Причина Решение
Эта ошибка отображается, если для одного действия миграции выбрано более четырех баз данных. В настоящее время каждое действие миграции ограничено четырьмя базами данных. Выберите четыре или меньше баз данных на одно действие миграции. Если необходимо выполнить миграцию более четырех баз данных параллельно, выполните инициализацию еще одного экземпляра Azure Database Migration Service. В настоящее время каждая подписка поддерживает до двух экземпляров Azure Database Migration Service.

Ошибка при попытке остановить Azure Database Migration Service

При остановке экземпляра Azure Database Migration Service появляется следующее сообщение об ошибке:

  • Ошибка: не удалось остановить службу. Error (Ошибка): {'error':{'code':'InvalidRequest','message':'One or more activities are currently running' (Сейчас выполняется одно или более действий). Чтобы остановить службу, дождитесь завершения действий или остановите эти действия вручную и повторите попытку.'}}
Причина Решение
Эта ошибка отображается, когда экземпляр службы, который вы пытаетесь остановить, содержит действия, которые все еще выполняются или присутствуют в проектах миграции.





Убедитесь, что на момент попытки остановить службу в экземпляре отсутствуют действия, выполняемые Azure Database Migration Service. Вы также можете удалить действия или проекты перед попыткой остановки службы. Следующие шаги иллюстрируют удаление проектов для очистки экземпляра службы миграции путем удаления всех выполняющихся задач:
1. Install-Module -Name AzureRM.DataMigration
2. Login-AzureRmAccount
3. Select-AzureRmSubscription -SubscriptionName "<subName>"
4. Remove-AzureRmDataMigrationProject -Name <projectName> -ResourceGroupName <rgName> -ServiceName <serviceName> -DeleteRunningTask

Ошибка при попытке запустить Azure Database Migration Service

При запуске экземпляра Azure Database Migration Service появляется следующее сообщение об ошибке:

  • Ошибка: не удается запустить службу. Error: {'errorDetail':'The service failed to start, please contact Microsoft support'} (Ошибка: {' errorDetail ': 'Не удалось запустить службу. Обратитесь в службу поддержки Майкрософт '})
Причина Решение
Эта ошибка отображается при внутреннем сбое предыдущего экземпляра. Эта ошибка возникает редко, и группе разработчиков о ней известно.
Удалите экземпляр службы, который не удается запустить, затем подготавливает новый вместо прежнего.

Ошибка при восстановлении базы данных при переносе SQL в управляемый экземпляр базы данных SQL Azure

При выполнении оперативной миграции с SQL Server на Управляемый экземпляр SQL Azure прямая миграция завершается со следующей ошибкой:

  • Ошибка: не удалось выполнить операцию восстановления для операции с идентификатором 'operationId'. Код 'AuthorizationFailed', Сообщение 'Клиент 'clientId' с идентификатором объекта 'objectId' не авторизован выполнять действие 'Microsoft.Sql/locations/managedDatabaseRestoreAzureAsyncOperation/read' в области '/subscriptions/subscriptionId'.'.
Причина Решение
Эта ошибка означает, что субъект приложения, используемый для оперативной миграции с SQL Server на управляемом экземпляре SQL, не имеет разрешения на участие в подписке. Некоторые вызовы API с помощью Управляемого экземпляра в настоящее время должны иметь это разрешение в подписке для операции восстановления.













Используйте Get-AzureADServicePrincipalкомандлет PowerShell с -ObjectId, доступный в сообщении об ошибке, чтобы вывести отображаемое имя используемого идентификатора приложения.

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

Группа инженеров Azure Database Migration Service работает над тем, чтобы ограничить необходимый доступ из текущей роли участия в подписке. Если у вас есть бизнес-требование, которое не позволяет использовать роль участия, обратитесь в службу поддержки Azure за дополнительной справкой.

Ошибка при удалении сетевого адаптера, связанного с Azure Database Migration Service

При попытке удалить сетевую карту, связанную с Azure Database Migration Service, попытка удаления завершится сбоем со следующей ошибкой:

  • Ошибка: не удается удалить сетевую карту, связанную с Azure Database Migration Service, из-за службы DMS, использующей сетевой адаптер
Причина Решение
Эта проблема возникает, когда экземпляр Azure Database Migration Service может по-прежнему присутствовать и использовать сетевую карту.







Чтобы удалить эту сетевую карту, удалите экземпляр службы DMS, который автоматически удаляет сетевую карту, используемую службой.

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

После удаления всех проектов и действий, связанных с экземпляром Azure Database Migration Service, можно будет удалить экземпляр службы. Сетевая карта, используемая экземпляром службы, автоматически удаляется в процессе удаления службы.

Ошибка при подключении с помощью ExpressRoute

При попытке подключения к источнику с помощью ExpressRoute в мастере проектов Azure Database Migration Service происходит сбой после длительного времени ожидания.

Причина Решение
При использовании ExpressRoute Azure Database Migration Service требуется подготовка трех конечных точек службы в подсети виртуальной сети, связанной со службой:
– конечная точка служебной шины;
– конечная точка хранилища;
-- Целевая конечная точка базы данных (например, конечная точка SQL, конечная точка Azure Cosmos DB)




Включите необходимые конечные точки службы для подключения ExpressRoute между источником и Azure Database Migration Service.







Ошибка времени ожидания блокировки при переносе базы данных MySQL в База данных Azure для MySQL

При переносе базы данных MySQL в экземпляр базы данных Azure для MySQL с помощью Azure Database Migration Service происходит сбой миграции со следующей ошибкой ожидания блокировки:

  • Ошибка: ошибка миграции базы данных — Не удалось загрузить файл — Не удалось запустить процесс загрузки для файла "n" RetCode: SQL_ERROR SqlState: HY000 NativeError: 1205 Message: [MySQL][ODBC Driver][mysqld] Время ожидания блокировки истекло. Попробуйте перезапустить транзакцию
Причина Решение
Эта ошибка возникает при сбое миграции из-за времени ожидания блокировки во время миграции. Попробуйте увеличить значение серверного параметра "innodb_lock_wait_timeout" . Наибольшее допустимое значение — 1073741824.

Ошибка при подключении к исходному SQL Server при использовании динамического порта или именованного экземпляра

При попытке подключения Azure Database Migration Service к источнику SQL Server, который выполняется на именованном или динамическом порте, происходит сбой подключения со следующей ошибкой:

  • Ошибка: -1 — Сбой соединения SQL. При подключении к SQL Server произошла ошибка, связанная с сетью или с определенным экземпляром. Сервер не найден или недоступен. Проверьте правильность имени экземпляра и настройку сервера SQL Server для удаленных подключений. (поставщик: сетевые интерфейсы SQL, ошибка: 26 — ошибка при обнаружении указанного сервера или экземпляра)
Причина Решение
Эта проблема возникает, когда экземпляр SQL Server источника, к которому пытается подключиться Azure Database Migration Service, имеет динамический порт или использует именованный экземпляр. Служба обозревателя SQL Server прослушивает UDP-порт 1434 для входящих подключений к именованному экземпляру или при использовании динамического порта. Динамический порт может измениться каждый раз при перезапуске службы SQL Server. Вы можете проверить динамический порт, назначенный экземпляру, в конфигурации сети через диспетчер конфигурации SQL Server.


Убедитесь, что Azure Database Migration Service может подключаться к исходной службе обозревателя SQL Server через UDP-порт 1434 и экземпляру SQL Server через динамически назначаемый TCP-порт.

Дополнительные известные проблемы

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