Partilhar via


Regras de avaliação para migração do SQL Server para a Instância Gerenciada SQL do Azure

Aplica-se a:Instância Gerenciada do SQL do Azure

As ferramentas de migração validam sua instância do SQL Server de origem executando várias regras de avaliação. As regras identificam problemas que devem ser resolvidos antes de migrar seu banco de dados do SQL Server para a Instância Gerenciada SQL do Azure.

Este artigo fornece uma lista das regras usadas para avaliar a viabilidade de migrar seu banco de dados do SQL Server para a Instância Gerenciada SQL do Azure.

Resumo das regras

Título da regra Nível Categoria Detalhes
AnalysisCommandJob Instância Advertência O passo de tarefa de AnalysisCommand não é suportado na Instância SQL Gerida do Azure.
AnalysisQueryJob Instância Advertência etapa de trabalho AnalysisQuery não é suportada na Instância Gerenciada SQL do Azure.
AssemblyFromFile Base de dados Questão 'CREATE ASSEMBLY' e 'ALTER ASSEMBLY' com um parâmetro file não têm suporte na Instância Gerenciada SQL do Azure.
BulkInsert Base de dados Questão BULK INSERT com fonte de dados de blob que não seja do Azure não é suportada na Instância Gerenciada SQL do Azure.
ClrStrictSecurity Base de dados Advertência conjuntos CLR marcados como SAFE ou EXTERNAL_ACCESS são considerados INSEGUROS.
ComputeClause Base de dados Advertência A cláusula COMPUTE deixou de ser suportada e foi removida.
CryptographicProvider Base de dados Questão Foi encontrado um uso de CREATE CRYPTOGRAPHIC PROVIDER ou ALTER CRYPTOGRAPHIC PROVIDER. Isso não é suportado na Instância Gerenciada SQL do Azure.
DatabasePrincipalAlias Base de dados Questão SYS.DATABASE_PRINCIPAL_ALIASES já não é suportado e foi removido.
DbCompatLevelLowerThan100 Base de dados Advertência Nível de compatibilidade de banco de dados abaixo de 100 não é suportado.
DisableDefCNSTCHK Base de dados Questão opção SET DISABLE_DEF_CNST_CHK não é mais suportada e foi removida.
FastFirstRowHint Base de dados Advertência A dica de consulta FASTFIRSTROW não é mais suportada e foi removida.
FileStream Base de dados Questão FILESTREAM e FileTable não são suportados na Instância Gerenciada SQL do Azure.
LinkedServerWithNonSQLProvider Base de dados Questão servidor vinculado com provedor que não seja do SQL Server não tem suporte na Instância Gerenciada SQL do Azure.
MergeJob Instância Advertência etapa de trabalho de mesclagem não é suportada na Instância Gerenciada SQL do Azure.
MIDatabaseSize Base de dados Questão Instância Gerenciada SQL do Azure não oferece suporte a tamanho de banco de dados superior a 16 TB.
MIHeterogeneousMSDTCTransactSQL Base de dados Questão BEGIN DISTRIBUIR TRANSAÇÃO com servidor remoto diferente do SQL Server não é suportado na Azure SQL Managed Instance.
MIHomogeneousMSDTCTransactSQL Base de dados Questão BEGIN DISTRIBUTED TRANSACTION tem suporte em vários servidores para a Instância Gerenciada SQL do Azure.
MIInstanceSize Instância Advertência O tamanho máximo de armazenamento de instância na Instância Gerenciada SQL do Azure não pode ser maior que 8 TB.
MultipleLogFiles Base de dados Questão Instância Gerenciada SQL do Azure não oferece suporte a bancos de dados com vários arquivos de log.
NextColumn Base de dados Questão Tabelas e Colunas denominadas NEXT levam a um erro na Instância Gerenciada SQL do Azure.
NonANSILeftOuterJoinSyntax Base de dados Advertência A junção externa esquerda no estilo não-ANSI já não é suportada e foi removida.
NonANSIRightOuterJoinSyntax Base de dados Advertência junção externa direita em estilo não-ANSI deixou de ser suportada e foi removida.
NumDbExceeds100 Instância Advertência Instância Gerenciada SQL do Azure dá suporte a um máximo de 100 bancos de dados por instância.
OpenRowsetWithNonBlobDataSourceBulk Base de dados Questão OpenRowSet usado em operação em massa com fonte de dados de armazenamento de blob que não seja do Azure não é suportado na Instância Gerenciada SQL do Azure.
OpenRowsetWithNonSQLProvider Base de dados Questão OpenRowSet com provedor não-SQL não é suportado na Instância Gerenciada SQL do Azure.
PowerShellJob Instância Advertência A etapa de tarefa do PowerShell não é suportada no Azure SQL Managed Instance.
QueueReaderJob Instância Advertência etapa de trabalho do Leitor de Filas não é suportada na Instância Gerenciada SQL do Azure.
RAISERROR Base de dados Advertência As chamadas RAISERROR de estilo herdado devem ser substituídas por equivalentes modernos.
SqlMail Base de dados Advertência SQL Mail não é mais suportado.
SystemProcedures110 Base de dados Advertência Instruções detetadas que referenciam procedimentos armazenados no sistema removidos que não estão disponíveis na Instância Gerida de SQL do Azure.
TraceFlags Instância Advertência Foram encontrados sinalizadores de rastreamento sem suporte na Instância Gerenciada SQL do Azure.
TransactSqlJob Instância Advertência etapa de trabalho TSQL inclui comandos sem suporte na Instância Gerenciada SQL do Azure.
WindowsAuthentication Instância Advertência Os usuários do Banco de Dados mapeados com autenticação do Windows (segurança integrada) não têm suporte na Instância Gerenciada SQL do Azure.
XpCmdshell Base de dados Questão xp_cmdshell não tem suporte na Instância Gerenciada SQL do Azure.

Tarefa de Comando de Análise

Título: A etapa de trabalho AnalysisCommand não é suportada na Instância Gerenciada SQL do Azure.
Categoria: Advertência

Descrição
É uma etapa de trabalho que executa um comando do Analysis Services. A etapa de trabalho AnalysisCommand não é suportada na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados em Migrar do Azure para ver todos os trabalhos usando a etapa de trabalho do Comando do Analysis Service e avalie se a etapa de trabalho ou o objeto afetado pode ser removido. Como alternativa, migre para o SQL Server em VMs do Azure.

Para mais informações: diferenças do SQL Server Agent na Instância Gerida de SQL do Azure

Tarefa de Consulta de Análise

Título: A etapa de trabalho AnalysisQuery não é suportada na Instância Gerenciada SQL do Azure.
Categoria: Advertência

Descrição
É uma etapa de trabalho que executa uma consulta do Analysis Services. A etapa de trabalho AnalysisQuery não é suportada na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados em Migrar do Azure para ver todos os trabalhos usando a etapa de trabalho do Analysis Service Query e avalie se a etapa de trabalho ou o objeto afetado pode ser removido. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças do SQL Server Agent no da Instância Gerenciada SQL do Azure

Montagem a partir do ficheiro

Título: 'CREATE ASSEMBLY' e 'ALTER ASSEMBLY' com um parâmetro file não são suportados na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
A Instância Gerenciada SQL do Azure não oferece suporte a CREATE ASSEMBLY ou ALTER ASSEMBLY com um parâmetro de arquivo. Um parâmetro binário é suportado. Consulte a seção Objetos afetados para obter o objeto específico onde o parâmetro file é usado.

Recomendação
Revise objetos usando CREATE ASSEMBLY ou ALTER ASSEMBLY com um parâmetro file. Se algum desses objetos for necessário, converta o parâmetro file em um parâmetro binário. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças de CLR na Instância Gerenciada SQL do Azure

INSERÇÃO EM MASSA

Título: BULK INSERT com fonte de dados de blob que não seja do Azure não é suportado na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
A Instância Gerenciada SQL do Azure não pode acessar compartilhamentos de arquivos ou pastas do Windows. Consulte a seção "Objetos afetados" para obter os usos específicos das instruções BULK INSERT que não fazem referência a um blob do Azure. Os objetos com 'BULK INSERT' em que a origem não é o Armazenamento de Blobs do Azure não funcionam após a migração para a Instância Gerenciada SQL do Azure.

Recomendação
Você precisa converter instruções BULK INSERT que usam arquivos locais ou compartilhamentos de arquivos para usar arquivos do Armazenamento de Blobs do Azure ao migrar para a Instância Gerenciada SQL do Azure.

Para obter mais informações: diferenças entre inserção em massa e OPENROWSET na Instância Gerida do SQL do Azure

Segurança CLR

Título: Os conjuntos CLR marcados como SAFE ou EXTERNAL_ACCESS são considerados UNSAFE
Categoria: Advertência

Descrição
O modo de Segurança Estrita CLR é imposto na Instância Gerenciada SQL do Azure. Esse modo é habilitado por padrão e introduz alterações significativas para bancos de dados que contêm assemblies CLR definidos pelo usuário marcados como SAFE ou EXTERNAL_ACCESS.

Recomendação

O CLR usa o CAS (Code Access Security) no .NET Framework, que não é mais suportado como um limite de segurança. Um assembly CLR criado com PERMISSION_SET = SAFE pode aceder a recursos externos do sistema, chamar código não supervisionado e adquirir privilégios de administrador do sistema. No SQL Server 2017 (14.x) e versões posteriores, a opção sp_configure, segurança estrita do CLR, aumenta a segurança dos assemblies CLR. clr strict security está ativado por padrão e trata as assemblagens SAFE e EXTERNAL_ACCESS como se estivessem marcadas UNSAFE. A opção clr strict security pode ser desativada para compatibilidade com versões anteriores, mas não é recomendada.

Recomendamos que você assine todos os assemblies por um certificado ou chave assimétrica, com um logon correspondente que tenha recebido permissão UNSAFE ASSEMBLY no banco de dados master. Os administradores do SQL Server também podem adicionar assemblies à lista de assemblies, nos quais o motor de base de dados deve confiar. Para obter mais informações, consulte sys.sp_add_trusted_assembly.

Cláusula COMPUTE

Título: A cláusula COMPUTE não é mais suportada e foi removida.
Categoria: Advertência

Descrição
A cláusula COMPUTE gera totais que aparecem como colunas de resumo adicionais no final do conjunto de resultados. No entanto, essa cláusula não é mais suportada na Instância Gerenciada SQL do Azure.

Recomendação
O módulo T-SQL precisa ser reescrito usando o operador ROLLUP. O código a seguir demonstra como COMPUTE pode ser substituído por ROLLUP:

USE AdventureWorks2022;
GO

SELECT SalesOrderID,
    UnitPrice,
    UnitPriceDiscount
FROM Sales.SalesOrderDetail
ORDER BY SalesOrderID COMPUTE SUM(UnitPrice),
    SUM(UnitPriceDiscount) BY SalesOrderID;
GO

SELECT SalesOrderID,
    UnitPrice,
    UnitPriceDiscount,
    SUM(UnitPrice) AS UnitPrice,
    SUM(UnitPriceDiscount) AS UnitPriceDiscount
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID,
    UnitPrice,
    UnitPriceDiscount
WITH ROLLUP;

Para obter mais informações: Funcionalidade descontinuada do mecanismo de banco de dados no SQL Server

Provedor de criptografia

Título: Foi encontrado um uso de CREATE CRYPTOGRAPHIC PROVIDER ou ALTER CRYPTOGRAPHIC PROVIDER, que não é suportado na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
A Instância Gerenciada SQL do Azure não dá suporte a instruções CRYPTOGRAPHIC PROVIDER porque não pode acessar arquivos. Consulte a seção Objetos Afectados para os usos específicos das instruções CRYPTOGRAPHIC PROVIDER. Objetos com 'CREATE CRYPTOGRAPHIC PROVIDER' ou 'ALTER CRYPTOGRAPHIC PROVIDER' não funcionam corretamente após a migração para a Instância Gerenciada SQL do Azure.

Recomendação
Revise os objetos com 'CREATE CRYPTOGRAPHIC PROVIDER' ou 'ALTER CRYPTOGRAPHIC PROVIDER'. Em qualquer dos objetos necessários, remova a utilização desses recursos. Como alternativa, migre para o SQL Server em VMs do Azure.

Para mais informações: Diferenças de provedor criptográfico na Instância Gerida do SQL do Azure

Compatibilidade com bases de dados

Título: Nível de compatibilidade de banco de dados abaixo de 100 não é suportado
Categoria: Advertência

Descrição
O Nível de Compatibilidade da Base de Dados é uma ferramenta valiosa para ajudar na modernização da base de dados, permitindo que o Mecanismo de Base de Dados do SQL Server seja atualizado, enquanto mantém o estado funcional das aplicações ligadas, mantendo o Nível de Compatibilidade da Base de Dados como antes da atualização. A Instância Gerenciada SQL do Azure não oferece suporte a níveis de compatibilidade abaixo de 100. Quando o banco de dados com nível de compatibilidade abaixo de 100 é restaurado na Instância Gerenciada SQL do Azure, o nível de compatibilidade é atualizado para 100.

Recomendação
Avalie se a funcionalidade do aplicativo está intacta quando o nível de compatibilidade do banco de dados é atualizado para 100 na Instância Gerenciada SQL do Azure. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: Níveis de compatibilidade com suporte na Azure SQL Managed Instance

Alias principal do banco de dados

Título: SYS.DATABASE_PRINCIPAL_ALIASES já não é suportado e foi removido.
Categoria: Questão

Descrição
sys.database_principal_aliases não tem mais suporte e foi removido na Instância Gerenciada SQL do Azure.

Recomendação
Use funções em vez de aliases.

Para obter mais informações: Funcionalidade descontinuada do mecanismo de banco de dados no SQL Server

Opção DISABLE_DEF_CNST_CHK

Título: A opção SET DISABLE_DEF_CNST_CHK não é mais suportada e foi removida.
Categoria: Questão

Descrição
A opção SET DISABLE_DEF_CNST_CHK não tem mais suporte e foi removida na Instância Gerenciada SQL do Azure.

Para mais informações: Funcionalidade do Mecanismo de Banco de Dados Descontinuada no SQL Server

Dica FASTFIRSTROW

Título: O indicador de consulta FASTFIRSTROW não é mais suportado e foi removido.
Categoria: Advertência

Descrição
A dica de consulta FASTFIRSTROW já não é suportada e foi removida na Azure SQL Managed Instance.

Recomendação
Em vez da dica de consulta FASTFIRSTROW, use OPTION (FAST n).

Para obter mais informações: Funcionalidade descontinuada do mecanismo de banco de dados no SQL Server

FILESTREAM

Título: FILESTREAM e FileTable não são suportados na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
O recurso FILESTREAM, que permite armazenar dados não estruturados, como documentos de texto, imagens e vídeos no sistema de arquivos NTFS, não é suportado na Instância Gerenciada SQL do Azure. Este banco de dados não pode ser migrado, pois o backup que contém grupos de arquivos FILESTREAM não pode ser restaurado na Instância Gerenciada SQL do Azure.

Recomendação
Carregue os arquivos não estruturados no armazenamento de Blob do Azure e armazene metadados relacionados a esses arquivos (nome, tipo, local da URL, chave de armazenamento, etc.) na Instância Gerenciada SQL do Azure. Talvez seja necessário reformular seu aplicativo para habilitar blobs de streaming de e para a Instância Gerenciada SQL do Azure. Como alternativa, migre para o SQL Server em VMs do Azure.

Para mais informações: Streaming Blobs para e de SQL Azure blog

MS DTC heterogéneo

Título: BEGIN DISTRIBUTED TRANSACTION com servidor remoto que não seja SQL Server não é suportado na Instância Gerida SQL do Azure.
Categoria: Questão

Descrição
A transação distribuída iniciada pelo Transact SQL BEGIN DISTRIBUTED TRANSACTION e gerenciada pelo Microsoft Distributed Transaction Coordinator (MS DTC) não terá suporte na Instância Gerenciada SQL do Azure se o servidor remoto não for o SQL Server.

Recomendação
Revise a seção de objetos afetados no Azure Migrate para ver todos os objetos usando BEGIN DISTRIBUTED TRANSACTION. Considere migrar os bancos de dados participantes para a Instância Gerenciada SQL do Azure, onde há suporte para transações distribuídas em várias instâncias. Para obter mais informações, consulte transações entre vários servidores para a Instância Gerenciada SQL do Azure.

Como alternativa, migre para o SQL Server em VMs do Azure.

MS DTC homogéneo

Título: BEGIN DISTRIBUTED TRANSACTION tem suporte em vários servidores para a Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
A transação distribuída iniciada pelo Transact SQL BEGIN DISTRIBUTED TRANSACTION e gerenciada pelo Microsoft Distributed Transaction Coordinator (MS DTC) tem suporte em vários servidores para a Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados no Azure Migrate para ver todos os objetos usando BEGIN DISTRIBUTED TRANSACTION. Considere migrar os bancos de dados participantes para a Instância Gerenciada SQL do Azure, onde há suporte para transações distribuídas em várias instâncias. Para mais informações, consulte Transações em vários servidores para a Instância Gerenciada do Azure SQL.

Como alternativa, migre para o SQL Server em VMs do Azure.

Servidor vinculado (provedor não SQL)

Título: O servidor vinculado com provedor que não seja do SQL Server não é suportado na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
Os servidores vinculados permitem que o Mecanismo de Banco de Dados do SQL Server execute comandos em fontes de dados OLE DB fora da instância do SQL Server. Não há suporte para servidor vinculado com provedor que não seja do SQL Server na Instância Gerenciada SQL do Azure.

Recomendação
A Instância Gerenciada SQL do Azure não oferece suporte à funcionalidade de servidor vinculado se o provedor de servidor remoto não for do SQL Server, como Oracle, Sybase, etc.

As seguintes ações são recomendadas para eliminar a necessidade de servidores vinculados:

  • Identifique os bancos de dados dependentes de servidores remotos não SQL e considere movê-los para o banco de dados que está sendo migrado.
  • Migre os bancos de dados dependentes para destinos com suporte, como Instância Gerenciada SQL, Banco de Dados SQL, Sinapse do Azure e instâncias do SQL Server.
  • Considere a criação de servidor vinculado entre a Instância Gerenciada SQL do Azure e o SQL Server em Máquinas Virtuais do Azure (SQL VM). Em seguida, a partir da máquina virtual SQL, crie um servidor vinculado a sistemas como Oracle, Sybase, etc. Esta abordagem envolve dois saltos, mas pode ser usada como solução temporária.
  • Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças do Servidor Vinculado no da Instância Gerenciada SQL do Azure

Unir tarefa

Título: A etapa de trabalho de mesclagem não é suportada na Instância Gerenciada SQL do Azure.
Categoria: Advertência

Descrição
É uma etapa de trabalho que ativa o Agente de Mesclagem de replicação. O Replication Merge Agent é um executável utilitário que aplica o instantâneo inicial mantido nas tabelas do banco de dados aos assinantes. Ele também mescla alterações incrementais de dados que ocorreram no Publisher depois que o instantâneo inicial foi criado e reconcilia conflitos de acordo com as regras configuradas ou usando um resolvedor personalizado criado. A etapa de trabalho de mesclagem não é suportada na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados no Azure Migrate para ver todos os trabalhos usando a etapa de trabalho de mesclagem e avalie se a etapa de trabalho ou o objeto afetado pode ser removido. Como alternativa, migre para o SQL Server em VMs do Azure.

Mais informações. diferenças do SQL Server Agent em Instância Gerenciada SQL do Azure

Tamanho do banco de dados da Instância Gerenciada SQL

Título: A Instância Gerenciada SQL do Azure não oferece suporte a tamanho de banco de dados maior que 16 TB.
Categoria: Questão

Descrição
O tamanho do banco de dados é maior do que o armazenamento máximo reservado de instância. Este banco de dados não pode ser selecionado para migração, pois o tamanho excedeu o limite permitido.

Recomendação
Avalie se os dados podem ser arquivados, compactados ou fragmentados em vários bancos de dados. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: Características de hardware da Instância Gerenciada SQL do Azure

Tamanho da instância gerida do SQL

Título: O tamanho máximo de armazenamento de instância na Instância Gerenciada SQL do Azure não pode ser maior que 8 TB.
Categoria: Advertência

Descrição
O tamanho de todos os bancos de dados é maior do que o armazenamento máximo reservado de instância.

Recomendação
Considere migrar os bancos de dados para diferentes Instâncias Gerenciadas do SQL do Azure ou para o SQL Server em Máquinas Virtuais do Azure se todos os bancos de dados tiverem que existir na mesma instância.

Para obter mais informações: Características de hardware da Instância Gerenciada SQL do Azure

Vários arquivos de log

Título: A Instância Gerenciada SQL do Azure não oferece suporte a vários arquivos de log.
Categoria: Questão

Descrição
O SQL Server permite que um banco de dados faça logon em vários arquivos. Esse banco de dados tem vários arquivos de log, que não são suportados na Instância Gerenciada SQL do Azure. Esse banco de dados não pode ser migrado, pois o backup não pode ser restaurado na Instância Gerenciada SQL do Azure.

Recomendação
A Instância Gerenciada SQL do Azure dá suporte a apenas um único log por banco de dados. Você precisa excluir todos, exceto um, dos arquivos de log antes de migrar esse banco de dados para o Azure:

ALTER DATABASE [database_name] REMOVE FILE [log_file_name]

Para mais informações: Opções de base de dados sem suporte na Instância Gerenciada do Azure SQL

Próxima coluna

Título: Tabelas e colunas chamadas NEXT levarão a um erro na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
Foram detetadas tabelas ou colunas denominadas NEXT. As sequências, introduzidas no Microsoft SQL Server, usam a função padrão ANSI NEXT VALUE FOR. Tabelas ou colunas nomeadas como NEXT e colunas com o alias VALUE sem o uso do padrão ANSI AS podem causar um erro.

Recomendação
Reescreva instruções para incluir a palavra-chave AS padrão ANSI ao atribuir um alias a uma tabela ou coluna. Por exemplo, quando uma coluna é nomeada NEXT e essa coluna é apelidada como VALUE, a consulta SELECT NEXT VALUE FROM TABLE causa um erro e deve ser reescrita como SELECT NEXT AS VALUE FROM TABLE. Da mesma forma, para uma tabela chamada NEXT com o pseudônimo VALUE, a consulta SELECT Col1 FROM NEXT VALUE gera um erro e deve ser reformulada como SELECT Col1 FROM NEXT AS VALUE.

Junção externa esquerda não estilo ANSI

Título: A junção externa esquerda no estilo não-ANSI não é mais suportada e foi removida.
Categoria: Advertência

Descrição
A associação externa esquerda no estilo não-ANSI não é mais suportada e foi removida na Instância Gerenciada SQL do Azure.

Recomendação
Use a sintaxe de junção ANSI.

Mais informações: Funcionalidade descontinuada do mecanismo de base de dados no SQL Server

Junção externa direita em estilo não-ANSI

Título: A junção externa direita, no estilo não ANSI, já não é suportada e foi removida.
Categoria: Advertência

Descrição
A associação externa direita no estilo não-ANSI não é mais suportada e foi removida na Instância Gerenciada SQL do Azure.

Mais informações: Funcionalidade descontinuada do mecanismo de base de dados no SQL Server

Recomendação
Use a sintaxe de junção ANSI.

As bases de dados excedem 100

Título: A Instância Gerenciada SQL do Azure dá suporte a um máximo de 100 bancos de dados por instância.
Categoria: Advertência

Descrição
O número máximo de bancos de dados com suporte na Instância Gerenciada SQL do Azure é 100, a menos que o limite de tamanho de armazenamento da instância tenha sido atingido.

Recomendação
Considere migrar os bancos de dados para diferentes Instâncias Gerenciadas do SQL do Azure ou para o SQL Server em Máquinas Virtuais do Azure se todos os bancos de dados tiverem que existir na mesma instância.

Para obter mais informações: Limites de Recursos da Instância Gerida do Azure SQL

OPENROWSET (fonte de dados não-BLOB)

Título: OpenRowSet usado em operação em massa com fonte de dados de armazenamento de blob que não seja do Azure não é suportado na Instância Gerida de SQL do Azure.
Categoria: Questão

Descrição
OPENROWSET suporta operações em massa por meio de um provedor BULK interno que permite que os dados de um arquivo sejam lidos e retornados como um conjunto de linhas. OPENROWSET com uma fonte de dados de armazenamento de objetos que não seja do Azure não é suportado na Instância Gerida SQL do Azure.

Recomendação
A Instância Gerenciada SQL do Azure não pode acessar compartilhamentos de arquivos e pastas do Windows, portanto, os arquivos devem ser importados do Armazenamento de Blobs do Azure. Portanto, apenas o tipo de blob DATASOURCE é suportado na função OPENROWSET. Como alternativa, migre para o SQL Server em VMs do Azure.

Mais informações: diferenças entre inserção em massa e OPENROWSET na instância gerenciada Azure SQL

OPENROWSET (provedor não-SQL)

Título: OpenRowSet com provedor não-SQL não é suportado na Instância Gerenciada SQL do Azure.
Categoria: Questão

Descrição
Esse método é uma alternativa para acessar tabelas em um servidor vinculado e é um método único e ad hoc de conexão e acesso a dados remotos usando OLE DB. OpenRowSet com provedor não-SQL não é suportado na Instância Gerenciada SQL do Azure.

Recomendação
A função OPENROWSET pode ser usada para executar consultas somente em instâncias do SQL Server (gerenciadas, locais ou em máquinas virtuais). Os provedores SQLNCLI, SQLNCLI11, SQLOLEDBe MSOLEDBSQL (recomendado) são suportados. O Microsoft OLE DB Driver for SQL Server é recomendado para novos desenvolvimentos.

A ação de recomendação é identificar os bancos de dados dependentes de servidores remotos não SQL e considerar movê-los para a instância que está sendo migrada.

Para obter mais informações: Inserção em massa e diferenças de OPENROWSET na instância gerida do Azure SQL

Trabalho do PowerShell

Título: A etapa de trabalho do PowerShell não é suportada na Instância Gerenciada SQL do Azure.
Categoria: Advertência

Descrição
É uma etapa de trabalho que executa um script do PowerShell. A etapa de trabalho do PowerShell não é suportada na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados em Migrar do Azure para ver todos os trabalhos usando a etapa de trabalho do PowerShell e avaliar se a etapa de trabalho ou o objeto afetado pode ser removido. Avalie se a Automação do Azure pode ser usada. Como alternativa, migre para o SQL Server em VMs do Azure.

Para mais informações: diferenças do SQL Server Agent na Instância Gerida do Azure SQL

Trabalho de Leitor de Fila

Título: A etapa de trabalho do Leitor de Filas não é suportada na Instância SQL Gerenciada do Azure.
Categoria: Advertência

Descrição
É uma etapa de trabalho que ativa o agente de leitura da fila de replicação. O Replication Queue Reader Agent é um executável que lê mensagens armazenadas em uma fila do Microsoft SQL Server ou em uma fila de mensagens da Microsoft e, em seguida, aplica essas mensagens ao Publicador. O Queue Reader Agent é utilizado com publicações instantâneas e transacionais que permitem atualizações em fila. A etapa de trabalho do Leitor de Filas não é suportada na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados no Azure Migrate para ver todos os trabalhos usando a etapa de trabalho do Leitor de Filas e avalie se a etapa de trabalho ou o objeto afetado pode ser removido. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças do SQL Server Agent no da Instância Gerenciada SQL do Azure

RAISERROR

Título: As chamadas RAISERROR de estilo legado devem ser substituídas por equivalentes modernos.
Categoria: Advertência

Descrição
Chamadas RAISERROR como o exemplo abaixo são denominadas como estilo legado porque não incluem as vírgulas e os parênteses. RAISERROR 50001 'this is a test'. Esse método de chamar RAISERROR não é mais suportado e removido na Instância Gerenciada SQL do Azure.

Recomendação
Reescreva a instrução usando a sintaxe RAISERROR atual ou avalie se a abordagem moderna de BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH é viável.

Para obter mais informações: Funcionalidade descontinuada do mecanismo de banco de dados no SQL Server

Correio SQL

Título: SQL Mail não foi mais suportado.
Categoria: Advertência

Descrição
O SQL Mail não foi mais suportado e removido na Instância Gerenciada SQL do Azure.

Recomendação
Utilize o Database Mail.

Para obter mais informações: A funcionalidade descontinuada do motor de base de dados no SQL Server

Procedimentos de Sistema 110

Título: Instruções detetadas que fazem referência a procedimentos armazenados do sistema removidos que não estão disponíveis na Azure SQL Managed Instance.
Categoria: Advertência

Descrição
Os seguintes procedimentos do sistema e procedimentos armazenados estendidos sem suporte não podem ser usados na Instância Gerida do SQL do Azure - sp_dboption, sp_addserver, sp_dropalias,sp_activedirectory_obj, sp_activedirectory_scpe sp_activedirectory_start.

Recomendação
Remova referências a procedimentos de sistema sem suporte que foram removidos na Instância Gerenciada SQL do Azure.

Para obter mais informações: Funcionalidade descontinuada do motor de base de dados no SQL Server

Transact-SQL trabalho

Título: A etapa de trabalho TSQL inclui comandos sem suporte na Instância Gerenciada SQL do Azure
Categoria: Advertência

Descrição
É uma etapa de trabalho que executa scripts Transact-SQL no horário agendado. A etapa de trabalho TSQL inclui comandos sem suporte, que não são suportados na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados em Migrar do Azure para ver todos os trabalhos que incluem comandos sem suporte na Instância Gerenciada SQL do Azure e avaliar se a etapa do trabalho ou o objeto afetado pode ser removido. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças do SQL Server Agent na Instância Gerida do Azure SQL

Sinalizadores de rastreio

Título: Sinalizadores de rastreamento sem suporte na Instância Gerenciada SQL do Azure foram encontrados
Categoria: Advertência

Descrição
A Instância Gerenciada SQL do Azure dá suporte a apenas um número limitado de sinalizadores de rastreamento global. Não há suporte para sinalizadores de rastreamento de sessão.

Recomendação
Consulte a seção de objetos afetados em Migrar do Azure para ver todos os sinalizadores de rastreamento sem suporte na Instância Gerenciada SQL do Azure e avaliar se eles podem ser removidos. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: Rastrear sinalizadores

Autenticação do Windows

Título: Os usuários de banco de dados mapeados com autenticação do Windows (segurança integrada) não são suportados na Instância Gerenciada SQL do Azure
Categoria: Advertência

Descrição
A Instância Gerenciada SQL do Azure dá suporte a dois tipos de autenticação:

  • Autenticação SQL, que usa um nome de usuário e senha
  • Autenticação do Microsoft Entra, que usa identidades gerenciadas pela ID do Microsoft Entra e é suportada para domínios gerenciados e integrados.

Os usuários de banco de dados mapeados com autenticação do Windows (segurança integrada) não têm suporte na Instância Gerenciada SQL do Azure.

Recomendação
Federar o Active Directory local com o Microsoft Entra ID. A identidade do Windows pode então ser substituída pelas identidades equivalentes do Microsoft Entra. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: Recursos de Segurança da Instância Gerenciada SQL

xp_cmdshell

Título: xp_cmdshell não é suportado na Azure SQL Managed Instance.
Categoria: Questão

Descrição
xp_cmdshell, que gera um shell de comando do Windows e passa uma cadeia de caracteres para execução não é suportado na Instância Gerenciada SQL do Azure.

Recomendação
Revise a seção de objetos afetados no Azure Migrate para ver todos os objetos que usam xp_cmdshell e avaliar se a referência a xp_cmdshell ou ao objeto afetado pode ser removida. Considere explorar a Automação do Azure que fornece serviços de automação e configuração baseados em nuvem. Como alternativa, migre para o SQL Server em VMs do Azure.

Para obter mais informações: diferenças de Procedimentos Armazenados na Instância Gerida SQL do Azure