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


Устранение распространенных проблем и ошибок 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 с Управляемый экземпляр SQL в настоящее время требуется это разрешение на подписку для операции восстановления.

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

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

Группа инженеров 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-порт, как применимо.

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