Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece uma lista de problemas conhecidos e etapas de solução de problemas associadas à extensão de Migração do SQL do Azure para o Azure Data Studio.
Importante
A versão mais recente do Integration Runtime (5.28.8488) bloqueia o acesso a um compartilhamento de arquivos de rede em um host local. Essa medida de segurança leva a falhas ao executar migrações para o SQL do Azure usando DMS. Execute o runtime de integração em um computador diferente do host de compartilhamento de rede.
Código de erro: 2007 – CutoverFailedOrCancelled
Mensagem:
Cutover failed or cancelled for database <DatabaseName>. Error details: The restore plan is broken because firstLsn <First LSN> of log backup <URL of backup in Azure Storage container>' is not <= lastLsn <last LSN> of Full backup <URL of backup in Azure Storage container>'. Restore to point in time.Causa: o erro pode ocorrer devido aos backups que estão sendo colocados incorretamente no contêiner do Armazenamento do Microsoft Azure. Se os backups forem colocados no compartilhamento de arquivos de rede, esse erro também poderá ocorrer devido a problemas de conectividade de rede.
Recomendação: verifique se os backups de banco de dados no contêiner de Armazenamento do Microsoft Azure estão corretos. Se você estiver usando um compartilhamento de arquivos de rede, problemas de rede ou latência poderão causar esse erro. Aguarde o processo ser concluído.
Mensagem:
Cutover failed or cancelled for database '{databaseName}'. Error details: 'errorCode: Ext_RestoreSettingsError, message: RestoreId: {RestoreId}, OperationId: {operationId}, Detail: Failed to complete restore., RestoreJobState: Restoring, CompleteRestoreErrorMessage: The database contains incompatible physical layout. Too many full text catalog files.Causa: o SQL Server na VM do Azure atualmente não dá suporte à restauração de bancos de dados com arquivos de catálogo de texto completo.
Recomendação: remova arquivos de catálogo de texto completo do banco de dados ao criar a restauração.
Mensagem:
Cutover failed or cancelled for database '{databaseName}'. Error details: 'Migration cannot be completed because provided backup file name '{providedFileName}' should be the last restore backup file '{lastRestoredFileName}'.'Causa: esse erro ocorre devido a uma limitação conhecida na Instância Gerenciada de SQL do Azure. Significa que o
{providedFileName}é diferente de{lastRestoredFileName}. A Instância Gerenciada de SQL restaura automaticamente todos os arquivos de backup válidos no contêiner com base na sequência LSN. Um caso de falha típico pode ser: o{providedFileName}élog1, mas os arquivos no contêiner têm outros arquivos, comolog2, que têm o maior número de LSN do quelog1. Nesse caso, a Instância Gerenciada de SQL restaura automaticamente todos os arquivos no contêiner. No final da conclusão da migração, a Instância Gerenciada de SQL relata essa mensagem de erro.Recomendação: para o modo de migração offline, forneça o "lastBackupName" com o maior LSN. Para um cenário de migração online, esse aviso/erro poderá ser ignorado se o status da migração for bem-sucedido.
Código de erro: 2009 – MigrationRestoreFailed
Mensagem:
Migration for Database 'DatabaseName' failed with error cannot find server certificate with thumbprint.Causa: antes de migrar dados, você precisa migrar o certificado da instância do SQL Server de origem de um banco de dados protegido pela TDE (transparent Data Encryption) para a Instância Gerenciada de SQL do Azure de destino ou o SQL Server na Máquina Virtual do Azure.
Recomendação: migre o certificado TDE para a instância de destino e repita o processo. Para obter mais informações sobre como migrar bancos de dados habilitados para TDE, confira Tutorial: Migrar bancos de dados habilitados para TDE (versão prévia) para o SQL do Azure no Azure Data Studio.
Mensagem:
Migration for Database <DatabaseName> failed with error 'Non retriable error occurred while restoring backup with index 1 - 3169'. The database was backed up on a server running version %ls. That version is incompatible with this server, which is running version %ls. Either restore the database on a server that supports the backup, or use a backup that is compatible with this server.Causa: não foi possível restaurar um backup do SQL Server para uma versão anterior do SQL Server além da versão na qual o backup foi criado.
Recomendação: confira Problemas que afetam a restauração do banco de dados entre diferentes versões do SQL Server para obter as etapas de solução de problemas.
Mensagem:
Migration for Database <DatabaseName> failed with error 'The managed instance has reached its storage limit. The storage usage for the managed instance can't exceed 32768 MBs.'Causa: a Instância Gerenciada de SQL do Azure atingiu seus limites de recursos.
Recomendação: para obter mais informações sobre limites de armazenamento, confira Visão geral dos limites de recursos da Instância Gerenciada de SQL do Azure.
Mensagem:
Migration for Database <DatabaseName> failed with error 'Non retriable error occurred while restoring backup with index 1 - 3634' The operating system returned the error '1450(Insufficient system resources exist to complete the requested service.)'Causa: um dos sintomas listados em Erros do sistema operacional 1450 e 665 são relatados para arquivos de banco de dados durante DBCC CHECKDB ou Criação de instantâneo do banco de dados pode ser a causa.
Recomendação: consulte Erros do sistema operacional 1450 e 665 são relatados para arquivos de banco de dados durante DBCC CHECKDB ou Criação de instantâneo do banco de dados para obter as etapas de solução de problemas.
Mensagem:
The restore plan is broken because firstLsn <First LSN> of log backup <URL of backup in Azure Storage container>' isn't <= lastLsn <last LSN> of Full backup <URL of backup in Azure Storage container>'. Restore to point in time.Causa: o erro pode ocorrer devido aos backups que estão sendo colocados incorretamente no contêiner do Armazenamento do Microsoft Azure. Se os backups forem colocados no compartilhamento de arquivos de rede, esse erro também poderá ocorrer devido a problemas de conectividade de rede.
Recomendação: verifique se os backups de banco de dados no contêiner do Armazenamento do Azure estão corretos. Se você estiver usando um compartilhamento de arquivos de rede, problemas de rede ou latência poderão causar esse erro. Aguarde o processo ser concluído.
Mensagem:
Migration for Database <Database Name> failed with error 'Non retriable error occurred while restoring backup with index 1 - 3234' Logical file <Name> isn't part of database <Database GUID>. Use RESTORE FILELISTONLY to list the logical file names. RESTORE DATABASE is terminating abnormally.Causa: você especificou um nome de arquivo lógico que não está no backup do banco de dados. Outra possível causa desse erro é o nome de contêiner de conta de armazenamento estar incorreto.
Recomendação: execute RESTORE FILELISTONLY para verificar os nomes de arquivo lógicos em seu backup. Para obter mais informações sobre RESTORE FILELISTONLY, confira Instruções RESTORE – FILELISTONLY (Transact-SQL).
Mensagem:
Migration for Database <Database Name> failed with error 'Azure SQL target resource failed to connect to storage account. Make sure the target SQL VNet is allowed under the Azure Storage firewall rules.'Causa: o firewall do Armazenamento do Microsoft Azure não está configurado para permitir o acesso ao destino do SQL do Azure.
Recomendação: para obter mais informações sobre a configuração do firewall do Armazenamento do Microsoft Azure, confira Configurar firewalls e redes virtuais do Armazenamento do Microsoft Azure.
Mensagem:
Migration for Database <Database Name> failed with error 'There are backups from multiple databases in the container folder'. Please make sure the container folder has backups from a single database.Causa: os backups de vários bancos de dados estão na mesma pasta de contêiner.
Recommendation: se estiver migrando vários bancos de dados para a Instância Gerenciada de SQL do Azure usando o mesmo contêiner do Armazenamento de Blobs do Azure, você deverá colocar os arquivos de backup de bancos de dados diferentes em pastas separadas dentro do contêiner. Para obter mais informações sobre o LRS, confira Migrar bancos de dados do SQL Server para a Instância Gerenciada de SQL usando o Serviço de Reprodução de Log (versão prévia).
Mensagem:
Migration for Database <Database Name> failed with error 'Non retriable error occurred while restoring backup with index 1 - 12824' The sp_configure value 'contained database authentication' must be set to 1 in order to restore a contained database. You may need to use RECONFIGURE to set the value_in_use. RESTORE DATABASE is terminating abnormally.Causa: o banco de dados de origem é um banco de dados independente. Uma configuração específica é necessária para habilitar a restauração de um banco de dados independente. Para obter mais informações sobre bancos de dados independentes, confira Usuários de banco de dados independente.
Recomendação: execute a seguinte consulta conectada ao SQL Server de origem no contexto do banco de dados específico antes de iniciar a migração. Em seguida, tente realizar a migração do banco de dados independente novamente.
-- Enable "contained database authentication" EXECUTE sp_configure 'contained', 1; RECONFIGURE;Mensagem:
Migration for Database <Database Name> failed with error 'Managed identity is not set up properly'. Please verify and try again.'Causa: a identidade gerenciada associada à Instância Gerenciada de SQL de destino não tem as permissões/função necessárias para acessar o Armazenamento de Blobs do Azure que contém os arquivos de backup necessários para a migração.
Recomendação: atribua a função ‘Leitor de dados do blob de armazenamento’ na conta do Armazenamento de Blobs do Azure à identidade gerenciada associada à Instância Gerenciada de SQL de destino. Para obter mais informações, consulte o blog.
Observação
Para obter mais informações sobre as etapas gerais de solução de problemas para erros da Instância Gerenciada de SQL do Azure, consulte problemas conhecidos com a Instância Gerenciada de SQL do Azure.
Código de erro: 2012 – TestConnectionFailed
Mensagem:
Failed to test connections using provided Integration Runtime. Error details: 'Remote name could not be resolved.'Causa: as configurações de rede no firewall estão fazendo com que o runtime de integração auto-hospedada não consiga se conectar ao back-end do serviço.
Recomendação: há um problema de DNS (Sistema de Nomes de Domínio). Entre em contato com a equipe de rede para corrigir o problema. Para obter mais informações, consulte Solucionar problemas de runtime de integração auto-hospedada.
Mensagem:
Failed to test connections using provided Integration Runtime. 'Cannot connect to <File share>. Detail Message: The system could not find the environment option that was enteredCausa: o runtime de integração auto-hospedada não pode se conectar ao compartilhamento de arquivos de rede em que os backups de banco de dados são colocados.
Recomendação: verifique se o nome do compartilhamento de arquivo de rede foi inserido corretamente.
Mensagem:
Failed to test connections using provided Integration Runtime. The file name does not conform to the naming rules by the data store. Illegal characters in path.Causa: o runtime de integração auto-hospedada não pode se conectar ao compartilhamento de arquivos de rede em que os backups de banco de dados são colocados.
Recomendação: verifique se o nome do compartilhamento de arquivo de rede foi inserido corretamente.
Mensagem:
Failed to test connections using provided Integration Runtime.Causa: falha na conexão com o runtime de integração auto-hospedada.
Recomendação: Consulte Solucionar problemas do runtime de integração auto-hospedada para obter etapas gerais de solução de problemas para erros de conectividade do runtime de integração.
Código de erro: 2014 – IntegrationRuntimeIsNotOnline
Mensagem:
Integration Runtime <IR Name> in resource group <Resource Group Name> Subscription <SubscriptionID> isn't online.Causa: o runtime de integração auto-hospedada não está online.
Recomendação: verifique se o runtime de integração auto-hospedada está registrado e online. Para executar o registro, você pode usar scripts do artigo Automatizar a instalação do runtime de integração auto-hospedada usando scripts locais do PowerShell. Confira, também, Solucionar problemas do runtime de integração auto-hospedada para obter etapas gerais de solução de problemas para erros de conectividade do runtime de integração.
Código de erro: 2030 – AzureSQLManagedInstanceNotReady
Mensagem:
Azure SQL Managed Instance <Instance Name> isn't ready.Causa: a Instância Gerenciada de SQL do Azure não está em um estado pronto.
Recomendação: aguarde até que a Instância Gerenciada de SQL do Azure esteja implantada e pronta e tente novamente o processo.
Código de erro: 2033 – SqlDataCopyFailed
Mensagem:
Migration for Database <Database> failed in state <state>.Causa: falha no pipeline do ADF para movimentação de dados.
Recomendação: verifique a página MigrationStatusDetails para obter informações de erro mais detalhadas.
Código de erro: 2038 – MigrationCompletedDuringCancel
Mensagem:
Migration cannot be canceled as Migration was completed during the cancel process. Target server: <Target server> Target database: <Target database>.Causa: uma solicitação de cancelamento foi recebida, mas a migração foi concluída com êxito antes da conclusão do cancelamento.
Recomendação: nenhuma ação é necessária. A migração foi bem-sucedida.
Código de erro: 2039 – MigrationRetryNotAllowed
Mensagem:
Migration isn't in a retriable state. Migration must be in state WaitForRetry. Current state: <State>, Target server: <Target Server>, Target database: <Target database>.Causa: uma solicitação de repetição foi recebida quando a migração não estava em um estado que permitia a repetição.
Recomendação: nenhuma ação é necessária. A migração está em andamento ou foi concluída.
Código de erro: 2040 – MigrationTimeoutWaitingForRetry
Mensagem:
Migration retry timeout limit of 8 hours reached. Target server: <Target Server>, Target database: <Target Database>.Causa: a migração estava ociosa em um estado com falha, mas recuperável, por 8 horas, e foi cancelada automaticamente.
Recomendação: nenhuma ação é necessária; a migração foi cancelada.
Código de erro: 2041 – DataCopyCompletedDuringCancel
Mensagem:
Data copy finished successfully before canceling completed. Target schema is in bad state. Target server: <Target Server>, Target database: <Target Database>.Causa: uma solicitação de cancelamento foi recebida e a cópia de dados foi concluída com êxito, mas o esquema de banco de dados de destino não foi retornado ao estado original.
Recomendação: se desejado, o banco de dados de destino pode ser retornado ao seu estado original executando a primeira consulta e todas as consultas retornadas, executando a segunda consulta e fazendo o mesmo.
SELECT [ROLLBACK] FROM [dbo].[__migration_status] WHERE STEP IN (3, 4, 6); SELECT [ROLLBACK] FROM [dbo].[__migration_status] WHERE STEP IN (5, 7, 8) ORDER BY STEP DESC;
Código de erro: 2042 – PreCopyStepsCompletedDuringCancel
Mensagem:
Pre Copy steps finished successfully before canceling completed. Target database Foreign keys and temporal tables have been altered. Schema migration may be required again for future migrations. Target server: <Target Server>, Target database: <Target Database>.Causa: a solicitação de cancelamento foi recebida e as etapas para preparar o banco de dados de destino para cópia foram concluídas com êxito. O esquema de banco de dados de destino não retornou ao estado original.
Recomendação: se desejado, o banco de dados de destino pode ser retornado ao seu estado original executando a consulta a seguir e todas as consultas retornadas.
SELECT [ROLLBACK] FROM [dbo].[__migration_status] WHERE STEP IN (3, 4, 6);
Código de erro: 2043 – CreateContainerFailed
Mensagem:
Create container <ContainerName> failed with error Error calling the endpoint '<URL>'. Response status code: 'NA - Unknown'. More details: Exception message: 'NA - Unknown [ClientSideException] Invalid Url:<URL>.Causa: a solicitação falhou devido a um problema subjacente, como conectividade de rede, uma falha de DNS, uma validação de certificado de servidor ou um tempo limite.
Recomendação: para obter mais etapas de solução de problemas, confira Solucionar problemas de pipelines do Azure Data Factory e do Synapse.
Código de erro: 2049 – FileShareTestConnectionFailed
Mensagem:
The value of the property '' is invalid: 'Access to <share path> is denied, resolved IP address is <IP address>, network type is OnPremise'.Causa: O compartilhamento de rede em que os backups de banco de dados são armazenados está no mesmo computador que o SHIR (Self-hosted Integration Runtime).
Recomendação: a versão mais recente do Integration Runtime (5.28.8488) impede o acesso a um compartilhamento de arquivos de rede em um host local. Certifique-se de executar o Integration Runtime em um computador diferente da hospedagem de compartilhamento de rede. Se a hospedagem do runtime de integração auto-hospedada e o compartilhamento de rede em computadores diferentes não for possível com a configuração de migração atual, você poderá usar a opção para recusar o uso de
DisableLocalFolderPathValidation.Observação
Para obter mais informações, confira Configurar um runtime de IR auto-hospedado existente por meio do PowerShell local. Use a opção de desabilitação com discrição, pois ela é menos segura.
Código de erro: 2055 – SqlInfoCollectionFailed
Mensagem:
A database operation failed with the following error: 'VIEW SERVER PERFORMANCE STATE permission was denied on object 'server', database 'master'. The user does not have permission to perform this action.Causa: O logon usado para o servidor de destino (Banco de Dados SQL do Azure) não tem a função de servidor
##MS_ServerStateReader##.Recomendação: Conceda a
##MS_ServerStateReader##função ao logon para o destino do SQL do Azure.Consulta:
ALTER SERVER ROLE ##MS_ServerStateReader## ADD MEMBER <login>.
Observação
Essa consulta deve ser executada no contexto do master banco de dados.
Código de erro: 2056 – SqlInfoValidationFailed
Mensagem:
CollationMismatch: Source database collation <CollationOptionSource> is not the same as the target database <CollationOptionTarget>. Source database: <SourceDatabaseName> Target database: <TargetDatabaseName>.Causa: a ordenação do banco de dados de origem não é a mesma que a ordenação do banco de dados de destino.
Recomendação: altere a ordenação do Banco de Dados SQL do Azure de destino para a mesma que o banco de dados do SQL Server de origem. O Banco de Dados SQL do Azure usa a ordenação
SQL_Latin1_General_CP1_CI_ASpor padrão; caso o banco de dados do SQL Server de origem use uma ordenação diferente, talvez seja necessário recriar ou selecionar um banco de dados de destino diferente com ordenação correspondente. Para obter mais informações, confira suporte para ordenação e UnicodeMensagem:
TableColumnCollationMismatch: Table <Tablename> with column <columnname> has collation <collationoptionsource> on source but has collation <collationoptiontarget> on target table.Causa: a ordenação da coluna da tabela do banco de dados de origem não é a mesma que a ordenação da coluna da tabela do banco de dados de destino.
Recomendação:
Migre o esquema para o Banco de Dados SQL do Azure de destino usando o Serviço de Migração de Banco de Dados. Veja o blog.
Siga este artigo para alterar a ordenação manualmente.
Para obter mais informações, confira suporte para ordenação e Unicode
Mensagem:
DatabaseSizeMoreThanMax: No tables were found in the target Azure SQL Database. Check if schema migration was completed beforehand.Causa: as tabelas selecionadas para a migração não existem no Banco de Dados SQL do Azure de destino.
Recomendação: certifique-se de que o esquema de banco de dados de destino tenha sido criado antes de iniciar a migração. Para obter mais informações sobre como implantar o esquema de banco de dados de destino, confira Extensão de projetos do Banco de Dados SQL
Mensagem:
DatabaseSizeMoreThanMax: The source database size <Source Database Size> exceeds the maximum allowed size of the target database <Target Database Size>. Check if the target database has enough space.Causa: o banco de dados de destino não tem espaço suficiente.
Recomendação: certifique-se de que o esquema de banco de dados de destino tenha sido criado antes de iniciar a migração. Para obter mais informações sobre como implantar o esquema de banco de dados de destino, confira a extensãoProjetos do Banco de Dados SQL.
Mensagem:
NoTablesFound: Some of the source tables don't exist in the target database. Missing tables: <TableList>.Causa: as tabelas selecionadas para a migração não existem no Banco de Dados SQL do Azure de destino.
Recomendação: verifique se as tabelas selecionadas existem no Banco de Dados SQL do Azure de destino. Se essa migração for chamada a partir de um script do PowerShell, verifique se o parâmetro de lista de tabelas inclui os nomes de tabela corretos e é passado para a migração.
Mensagem:
SqlVersionOutOfRange: Source instance version is lower than 2008, which is not supported to migrate. Source instance: <InstanceName>.Causa: o Serviço de Migração de Banco de Dados do Azure não dá suporte à migração de instâncias do SQL Server inferiores a 2008.
Recomendação: atualize sua instância do SQL Server de origem para uma versão mais recente do SQL Server. Para obter mais informações, confira Atualizar o SQL Server.
Mensagem:
TableMappingMismatch: Some of the source tables don't exist in the target database. Missing tables: <TableList>.Causa: as tabelas selecionadas para a migração não existem no Banco de Dados SQL do Azure de destino.
Recomendação: verifique se as tabelas selecionadas existem no Banco de Dados SQL do Azure de destino. Se essa migração for chamada a partir de um script do PowerShell, verifique se o parâmetro de lista de tabelas inclui os nomes de tabela corretos e é passado para a migração.
Código de erro: 2060 – SqlSchemaCopyFailed
Mensagem:
The SELECT permission was denied on the object 'sql_logins', database 'master', schema 'sys'.Causa: a conta que os clientes usam para conectar o Banco de Dados SQL do Azure não tem permissão para acessar a tabela
sys.sql_logins.Recomendação: há duas maneiras de atenuar o problema:
Adicione a função sysadmin à conta, que concede a permissão de administrador.
Se os clientes não puderem usar a conta sysadmin ou não puderem conceder permissão sysadmin à conta, a permissão mínima no SQL Server de origem necessária será db_owner. No banco de dados SQL do Azure de destino, crie um usuário
mastere conceda##MS_DatabaseManager####MS_DatabaseConnector####MS_DefinitionReader####MS_LoginManager##funções de servidor fixas ao usuário. Por exemplo:-- Run the script in the master database 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';
Mensagem:
Failed to get service token from ADF service.Causa: o SHIR do cliente não consegue conectar o data factory.
Recomendação: esta é uma documentação de exemplo de como resolver o problema: Não é possível conectar o runtime de integração ao Data Factory
Mensagem:
IR Nodes are offline.Causa: a causa pode ser a rede ter sido interrompida durante a migração e, portanto, o nó IR ter ficado offline. Certifique-se de que o computador no qual o SHIR está instalado esteja ativado.
Recomendação: certifique-se de que o computador em que o SHIR está instalado esteja ativado.
Mensagem:
Deployed failure: {0}. Object element: {1}.Causa: esse é o erro mais comum que os clientes podem encontrar. Isso significa que o objeto não pode ser implantado no destino porque não tem suporte no destino.
Recomendação: os clientes precisam verificar os resultados da avaliação (regras de avaliação). Esta é a lista de problemas de avaliação que podem falhar na migração de esquema:
- BULK INSERT
- Cláusula COMPUTE
- Provedor criptográfico
- Referências entre bancos de dados
- Alias da entidade de banco de dados
- Opção DISABLE_DEF_CNST_CHK
- Dica FASTFIRSTROW
- FILESTREAM
- MS DTC
- OPENROWSET (em massa)
- OPENROWSET (provedor)
Observação
Para exibir os detalhes do erro, abra o Gerenciador de configurações do runtime de integração da Microsoft e navegue até Diagnóstico > Logs > Exibir logs. No Visualizador de eventos, navegue até Logs de aplicativo e serviço >Conectores – runtime de integração e filtre para exibir erros.
Mensagem:
Deployed failure: Index cannot be created on computed column '{0}' of table '{1}' because the underlying object '{2}' has a different owner. Object element: {3}.Exemplo do script gerado:
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[Sales].[Customer]') AND name = N'AK_Customer_AccountNumber') CREATE UNIQUE NONCLUSTERED INDEX [AK_Customer_AccountNumber] ON [Sales].[Customer] ( [AccountNumber] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)Causa: todas as referências de função na coluna computada devem ter o mesmo proprietário que a tabela.
Recomendação: confira Requisitos de propriedade.
Código de erro: Ext_RestoreSettingsError
Mensagem:
Unable to read blobs in storage container, exception: The remote server returned an error: (403) Forbidden.; The remote server returned an error: (403) ForbiddenCausa: o destino do SQL do Azure não consegue se conectar ao armazenamento de blobs.
Recomendação: confirme se as configurações de rede de destino permitem o acesso ao armazenamento de blobs. Por exemplo, se você estiver migrando para um SQL Server no destino da VM do Azure, certifique-se de que as conexões de saída na máquina virtual não estejam sendo bloqueadas.
Mensagem:
Failed to create restore job. Unable to read blobs in storage container, exception: The remote name could not be resolved.Causa: o destino do SQL do Azure não consegue se conectar ao armazenamento de blobs.
Recomendação: confirme se as configurações de rede de destino permitem o acesso ao armazenamento de blobs. Por exemplo, se estiver migrando para a VM do SQL, certifique-se de que as conexões de saída na VM não estejam sendo bloqueadas.
Mensagem:
Migration for Database <Database Name> failed with error 'Migration cannot be completed because provided backup file name <Backup File Name> should be the last restore backup file <Last Restore Backup File Name>'.Causa: o backup mais recente não foi especificado nas configurações de backup.
Recomendação: especifique o nome do arquivo de backup mais recente nas configurações de backup e repita a operação.
Mensagem:
Operation failed: errorCode: Ext_RestoreSettingsError, message: RestoreId: 1111111-aaaa-bbbb-cccc-dddddddd, OperationId: 2222222-aaaa-bbbb-cccc-dddddddd, Detail: Unable to read blobs in storage container, exception: Unable to connect to the remote server;Unable to connect to the remote server;A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 11.111.11.111:443.Causa: é possível que o erro ocorra para contas de armazenamento com rede pública e configuração de ponto de extremidade privado. Também é possível que você tenha um servidor DNS local que controla um roteamento de rede híbrida e DHCP. A menos que você permita os endereços IP do Azure configurados em seu servidor DNS, o destino do SQL Server na VM do Azure não tem nenhuma chance de resolver o ponto de extremidade de blob de armazenamento remoto.
Recomendação: para depurar esse problema, você pode tentar executar ping na URL de Armazenamento de Blobs do Azure do seu SQL Server no destino da VM do Azure e confirmar se você tem um problema de conectividade. Para resolver esse problema, você precisa permitir os endereços IP do Azure configurados em seu servidor DNS. Para obter mais informações, confira Solucionar problemas de conectividade do ponto de extremidade privado do Azure
Código de erro: nenhum host conhecido OU erro de urlopen [Errno 11001] getaddrinfo falhou
Mensagem:
No such host is knownCausa: durante a migração de logons usando o comando do PowerShell New-AzDataMigrationLoginsMigration, ela falha com a mensagem anterior.
Recomendação: para resolver esse problema, atualize
Az.DataMigrationpara uma versão posterior da 0.14.5.A versão
Az.DataMigrationmais recente pode ser baixada na galeria do PowerShell ou o comando a seguir pode ser usado para atualizar.
Update-Module -Name Az.DataMigration
Mensagem:
urlopen error [Errno 11001] getaddrinfo failedCausa: ao migrar logons usando a CLI do Azure az dataMigration login-migration, ele falha com a mensagem anterior.
Recomendação: para resolver esse problema, atualize a CLI do Microsoft Azure – extensão do Serviço de Migração de Banco de Dados – az dataMigration para 1.0.0b1 ou uma versão posterior. Execute o seguinte comando para atualizar.
az extension update -n datamigration
Código de erro: Erro de seleção de contêiner de blob: erro ao listar o conteúdo do contêiner: essa solicitação não está autorizada a executar essa operação usando essa permissão.
Mensagem:
Blob container selection error: Error listing the contents of the container: This request is not authorized to perform this operation using this permission.Causa: Ao migrar para uma Instância Gerenciada de SQL por meio do portal do Azure usando Identidade Gerenciada, se o usuário conectado não tiver acesso de leitor de dados de blob de armazenamento na conta de armazenamento, a operação falhará com a mensagem anterior.
Recomendação: para resolver esse problema, verifique se o usuário conectado tem acesso ao Leitor de Dados do Blob de Armazenamento na conta de armazenamento. Essa permissão é necessária para listar pastas e arquivos no contêiner de blob durante a instalação da migração por meio do portal do Azure. Para obter mais informações, consulte DMS – Suporte à Identidade Gerenciada para migração da Instância Gerenciada de SQL do Azure.
Regras de nomenclatura do Serviço de Migração de Banco de Dados do Azure
Se o serviço DMS falhou com Error: Service name 'x_y_z' is not valid, você precisará seguir as Regras de Nomenclatura do Serviço de Migração de Banco de Dados do Azure. Como o Serviço de Migração de Banco de Dados do Azure usa o Azure Data Factory para computação, ele segue exatamente as mesmas regras de nomenclatura mencionadas nas regras de nomenclatura.
Limitações do Banco de Dados SQL do Azure
A migração para o Banco de Dados SQL do Azure usando a extensão SQL do Azure para a Azure Data Studio tem as seguintes limitações:
A migração offline do Banco de Dados SQL do Azure utiliza pipelines do ADF (Azure Data Factory) para movimentação de dados e, portanto, segue as limitações do ADF. Um ADF correspondente é criado quando um serviço de migração de banco de dados também é criado. Portanto, os limites de fábrica se aplicam por serviço.
O computador em que o SHIR está instalado atua como a computação para migração. Verifique se esse computador pode lidar com a CPU e a carga de memória da cópia de dados. Para obter mais informações, consulte as Recomendações do SHIR.
100.000 tabelas por limite de banco de dados.
10.000 migrações simultâneas de banco de dados por serviço.
A velocidade de migração depende muito do SKU do Banco de Dados SQL do Azure de destino e do host de runtime de integração auto-hospedada.
A migração do banco de dados SQL do Azure é mal escalonada com números de tabela devido à sobrecarga do ADF nas atividades iniciais. Se um banco de dados tiver milhares de tabelas, o processo de inicialização de cada tabela pode levar alguns segundos, mesmo que elas sejam compostas por uma linha com 1 bit de dados.
Atualmente, não há suporte para migração aos nomes de tabela do Banco de Dados SQL do Azure com caracteres de byte duplo. A mitigação é renomear tabelas antes da migração. Eles podem ser alterados de volta para seus nomes originais após a migração bem-sucedida.
A migração de tabelas com colunas de blob grandes pode falhar devido ao tempo limite.
Atualmente, não há suporte aos nomes de banco de dados com SQL Server reservados.
Atualmente, não há suporte aos nomes de banco de dados que incluem ponto e vírgula.
As colunas computadas não são migradas.
As colunas no banco de dados de origem que têm restrições padrão e contêm valores NULL são migradas com seus valores padrão definidos no banco de dados SQL do Azure de destino, em vez de reter os NULLs.
Limitações da Instância Gerenciada de SQL do Azure
Importante
As migrações online com a extensão do SQL do Azure usam a mesma tecnologia que o LRS (Serviço de Reprodução de Log) e têm as mesmas limitações. Antes de migrar bancos de dados para a camada de serviço Comercialmente crítica, considere estas limitações, que não se aplicam à camada de serviço Uso Geral.
Migrar para a Instância Gerenciada de SQL do Azure usando a extensão do Azure SQL para Azure Data Studio tem as seguintes limitações:
Se estiver migrando um banco de dados individual, os backups de banco de dados deverão ser colocados em uma estrutura de arquivo simples dentro de uma pasta de banco de dados (incluindo a pasta raiz do contêiner) e as pastas não poderão ser aninhadas. Não há suporte para pastas aninhadas.
Caso esteja migrando vários bancos de dados usando o mesmo contêiner do Armazenamento de Blobs do Azure, você deverá colocar os arquivos de backup de bancos de dados diferentes em pastas separadas dentro do contêiner.
Não há suporte para substituir bancos de dados existentes usando o DMS (Serviço de Migração de Banco de Dados) na Instância Gerenciada de SQL do Azure de destino.
O DMS não suporta a configuração de alta disponibilidade e recuperação de desastres em seu destino para corresponder à topologia de origem.
Não há suporte para os seguintes objetos do servidor:
- trabalhos do SQL Server Agent
- Credenciais
- Pacotes do SSIS (SQL Server Integration Services)
- Auditoria de servidor
Não é possível usar um runtime de integração auto-hospedada existente criado com base no Azure Data Factory para migrações de banco de dados com o DMS. Inicialmente, o runtime de integração auto-hospedada deve ser criado usando a extensão de migração do SQL do Azure no Azure Data Studio, e pode ser reutilizado para migrações de banco de dados posteriores.
Um único trabalho do Serviço de Reprodução de Log (LRS), criado pelo DMS, pode ser executado por no máximo 30 dias. Quando esse período expirar, o trabalho será automaticamente cancelado, portanto, o banco de dados de destino será automaticamente excluído.
Se você receber o seguinte erro:
Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance, esse problema será por design. O SQL Server In-Memory OLTP não tem suporte na camada de Uso Geral da Instância Gerenciada de SQL do Azure. Para continuar a migração, atualize para o nível Comercialmente Crítico, que oferece suporte a OLTP in-memory. Outra maneira é se certificar de que o banco de dados de origem não o esteja usando enquanto a Instância Gerenciada de SQL do Azure for de Uso Geral.
Limitações do SQL Server em VMs do Azure
Migrar para o SQL Server em VMs do Azure usando a extensão do SQL do Azure para o Azure Data Studio tem as seguintes limitações:
Se estiver migrando um banco de dados individual, os backups de banco de dados deverão ser colocados em uma estrutura de arquivo simples dentro de uma pasta de banco de dados (incluindo a pasta raiz do contêiner) e as pastas não poderão ser aninhadas. Não há suporte para pastas aninhadas.
Caso esteja migrando vários bancos de dados usando o mesmo contêiner do Armazenamento de Blobs do Azure, você deverá colocar os arquivos de backup de bancos de dados diferentes em pastas separadas dentro do contêiner.
Não há suporte para substituir bancos de dados existentes usando o DMS (Serviço de Migração de Banco de Dados) no SQL Server de destino na Máquina Virtual do Azure.
O DMS não suporta a configuração de alta disponibilidade e recuperação de desastres em seu destino para alinhamento com a topologia de origem.
Não há suporte para os seguintes objetos do servidor:
- trabalhos do SQL Server Agent
- Credenciais
- Pacotes do SSIS (SQL Server Integration Services)
- Auditoria de servidor
Não é possível usar um runtime de integração auto-hospedada existente criado com base no Azure Data Factory para migrações de banco de dados com o DMS. Inicialmente, o runtime de integração auto-hospedada deve ser criado usando a extensão de migração do SQL do Azure no Azure Data Studio e pode ser reutilizado para novas migrações de banco de dados.
Não há suporte para uma VM (máquina virtual) com o SQL Server 2008 e versões anteriores como destino ao migrar para o SQL Server em Máquinas Virtuais do Azure.
Se você estiver usando uma VM com o SQL Server 2012 ou o SQL Server 2014, será necessário armazenar os arquivos de backup do banco de dados de origem em um contêiner do Armazenamento de Blobs do Azure em vez de usar a opção de compartilhamento de rede. Armazene os arquivos de backup como blobs de página, já que os blobs de blocos só têm suporte no SQL Server 2016 e em versões posteriores.
Você deve verificar se a Extensão do Agente IaaS do SQL Server na Máquina Virtual do Azure de destino está no modo Completo em vez do modo Lightweight.
A Extensão do Agente IaaS do SQL Server dá suporte apenas ao gerenciamento da Instância do Servidor Padrão ou da Instância Única Nomeada.
Você pode migrar no máximo 100 bancos de dados para a mesma Máquina Virtual do SQL Server do Azure como o destino usando uma ou mais migrações simultaneamente. Além disso, depois que uma migração com 100 bancos de dados for concluída, você deverá aguardar pelo menos 30 minutos antes de iniciar uma nova migração para a mesma VM do SQL Server do Azure que o destino. Além disso, cada operação de migração (início da migração, substituição) para cada banco de dados levará alguns minutos sequencialmente. Por exemplo, para migrar 100 bancos de dados, pode levar aproximadamente 200 (2 x 100) minutos para criar as filas de migração e aproximadamente 100 (1 x 100) minutos para cortar todos os 100 bancos de dados (excluindo o tempo de backup e restauração). Portanto, a migração se torna mais lenta à medida que o número de bancos de dados aumentar.
Você deve agendar uma janela de migração mais longa com antecedência com base em testes de migração rigorosos ou particionamento de um grande número de bancos de dados em lotes ao migrar para uma VM do Azure do SQL Server.
Além de configurar a rede/firewall de sua Conta de Armazenamento do Azure para permitir que sua VM acesse arquivos de backup. Você também precisa configurar a rede/firewall do SQL Server na VM do Azure para permitir a conexão de saída com sua conta de armazenamento.
Você precisa manter a energia ativada para o SQL Server de destino na VM do Azure enquanto a Migração de SQL está em andamento. Além disso, ao criar uma nova migração, fazer failover ou cancelar a migração.
Erro:
Login failed for user 'NT Service\SQLIaaSExtensionQuery.Motivo: a instância do SQL Server está no modo de usuário único. Um motivo possível é o SQL Server de destino na VM do Azure estar no modo de atualização.
Solução: aguarde até que o SQL Server de destino na VM do Azure saia do modo de atualização e inicie a migração novamente.
Erro:
Ext_RestoreSettingsError, message: Failed to create restore job.;Cannot create file 'F:\data\XXX.mdf' because it already exists.Solução: conectar-se ao SQL Server de destino na VM do Azure e excluir o arquivo XXX.mdf. Em seguida, inicie a migração novamente.
Limitações do Azure Data Studio
Falha ao iniciar o Serviço de Migração do SQL. Erro: Erro de solicitação
Mensagem:
Error at ClientRequest.<anonymous> (c:\Users\MyUser\.azuredatastudio\extensions\microsoft.sql-migration-1.4.2\dist\main.js:2:7448) at ClientRequest.emit (node:events:538:35) at TLSSocket.socketOnEnd (node:_http_client:466:9) at TLSSocket.emit (node:events:538:35) at endReadableNT (node:internal/streams/readable:1345:12) at process.processTicksAndRejections (node:internal/process/task_queues:83:21)Causa: esse problema ocorre quando o Azure Data Studio não consegue baixar o pacote MigrationService de https://github.com/microsoft/sqltoolsservice/releases. A falha de download pode ser devida ao trabalho de rede estar desconectado ou às configurações de proxy não terem sido resolvidas.
Recomendação: a maneira segura de resolver esse problema é baixando o pacote manualmente. Siga as etapas de mitigação descritas neste link: https://github.com/microsoft/azuredatastudio/issues/22558#issuecomment-1496307891