Regole di valutazione per la migrazione da SQL Server a Istanza gestita di SQL di Azure

Si applica a: Istanza gestita di SQL di Azure SQL

Gli strumenti di migrazione convalidano l'istanza di SQL Server di origine eseguendo diverse regole di valutazione. Le regole identificano i problemi che devono essere risolti prima di eseguire la migrazione del database di SQL Server a Istanza gestita di SQL di Azure.

Questo articolo fornisce un elenco delle regole usate per valutare la fattibilità della migrazione del database di SQL Server all’istanza gestita SQL di Azure.

Riepilogo delle regole

Titolo della regola Level Categoria Dettagli
AnalysisCommandJob Istanza Avviso Il passaggio del processo AnalysisCommand non è supportato in Istanza gestita di SQL di Azure.
AnalysisQueryJob Istanza Avviso Il passaggio del processo AnalysisQuery non è supportato in Istanza gestita di SQL di Azure.
AssemblyFromFile Database Problema 'CREATE ASSEMBLY' e 'ALTER ASSEMBLY' con un parametro di file non sono supportati in Istanza gestita di SQL di Azure.
BulkInsert Database Problema BULK INSERT con origine dati BLOB non Azure non è supportato in Istanza gestita di SQL di Azure.
ClrStrictSecurity Database Avviso Gli assembly CLR contrassegnati come SAFE o EXTERNAL_ACCESS sono considerati UNSAFE.
ComputeClause Database Avviso La clausola COMPUTE non è più supportata ed è stata rimossa.
CryptographicProvider Database Problema È stato trovato un uso di CREATE CRYPTOGRAPHIC PROVIDER o ALTER CRYPTOGRAPHIC PROVIDER. Questo non è supportato in Istanza gestita di SQL di Azure.
DatabasePrincipalAlias Database Problema SYS.DATABASE_PRINCIPAL_ALIASES non è più supportato ed è stato rimosso.
DbCompatLevelLowerThan100 Database Avviso I livelli di compatibilità inferiori a 100 non sono supportati.
DisableDefCNSTCHK Database Problema L'opzione SET DISABLE_DEF_CNST_CHK non è più supportata ed è stata rimossa.
FastFirstRowHint Database Avviso La query FASTFIRSTROW non è più supportata ed è stata rimossa.
FileStream Database Problema FILESTREAM e FileTable non sono supportati in Istanza gestita di SQL di Azure.
LinkedServerWithNonSQLProvider Database Problema Il server collegato con provider non SQL Server non è supportato in Istanza gestita di SQL di Azure.
MergeJob Istanza Avviso Il passaggio del processo di unione non è supportato in Istanza gestita di SQL di Azure.
MIDatabaseSize Database Problema Istanza gestita di SQL di Azure non supporta dimensioni del database superiori a 16 TB.
MIHeterogeneousMSDTCTransactSQL Database Problema BEGIN DISTRIBUTED TRANSACTION con server remoto non SQL Server non è supportato in Istanza gestita di SQL di Azure.
MIHomogeneousMSDTCTransactSQL Database Problema BEGIN DISTRIBUTED TRANSACTION è supportato in più server per Istanza gestita di SQL di Azure.
MIInstanceSize Istanza Avviso Le dimensioni massime di archiviazione dell'istanza in Istanza gestita di SQL di Azure non possono essere superiori a 8 TB.
MultipleLogFiles Database Problema Istanza gestita di SQL di Azure non supporta i database con più file di log.
NextColumn Database Problema Le tabelle e le colonne denominate NEXT generano un errore in Istanza gestita di SQL di Azure.
NonANSILeftOuterJoinSyntax Database Avviso Lo stile left outer join non ANSI non è più supportato ed è stato rimosso.
NonANSIRightOuterJoinSyntax Database Avviso Lo stile right join non ANSI non è più supportato ed è stato rimosso.
NumDbExceeds100 Istanza Avviso Istanza gestita di SQL di Azure supporta un massimo di 100 database per istanza.
OpenRowsetWithNonBlobDataSourceBulk Database Problema OpenRowSet usato nell'operazione bulk con l'origine dati di archiviazione BLOB non di Azure non è supportato in Istanza gestita di SQL di Azure.
OpenRowsetWithNonSQLProvider Database Problema OpenRowSet con provider non SQL non è supportato in Istanza gestita di SQL di Azure.
PowerShellJob Istanza Avviso Il passaggio del processo PowerShell non è supportato in Istanza gestita di SQL di Azure.
QueueReaderJob Istanza Avviso Il passaggio del processo di lettura coda non è supportato in Istanza gestita di SQL di Azure.
RAISERROR Database Avviso Le chiamate RAISERROR legacy devono essere sostituite con equivalenti moderni.
SqlMail Database Avviso SQL Mail non è più supportato.
SystemProcedures110 Database Avviso Istruzioni rilevate che fanno riferimento a procedure archiviate di sistema rimosse che non sono disponibili in Istanza gestita di SQL di Azure.
TraceFlags Istanza Avviso Sono stati trovati flag di traccia non supportati in Istanza gestita di SQL di Azure.
TransactSqlJob Istanza Avviso Il passaggio del processo TSQL non è tra cui Comandi in Istanza gestita di SQL di Azure.
WindowsAuthentication Istanza Avviso Gli utenti del database mappati con autenticazione di Windows (sicurezza integrata) non sono supportati in Istanza gestita di SQL di Azure.
XpCmdshell Database Problema xp_cmdshell non è supportato in Istanza gestita di SQL di Azure.

Processo AnalysisCommand

Titolo: il passaggio del processo AnalysisCommand non è supportato in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Si tratta di un passaggio di processo che esegue un comando di Analysis Services. Il passaggio del processo AnalysisCommand non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi che usano il passaggio del processo di Analysis Service Command e valutare se è possibile rimuovere il passaggio del processo o l'oggetto interessato. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

Processo AnalysisQuery

Titolo: il passaggio del processo AnalysisQuery non è supportato in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Si tratta di un passaggio di processo che esegue una query di Analysis Services. Il passaggio del processo AnalysisQuery non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi che usano il passaggio del processo di Analysis Service Query e valutare se è possibile rimuovere il passaggio del processo o l'oggetto interessato. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

Assembly da file

Titolo: 'CREATE ASSEMBLY' e 'ALTER ASSEMBLY' con un parametro di file non sono supportati in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
Istanza gestita di SQL di Azure non supporta CREATE ASSEMBLY o ALTER ASSEMBLY con un parametro di file. È supportato un parametro binario. Vedere la sezione Oggetti interessati per l'oggetto specifico in cui viene usato il parametro di file.

Consiglio
Esaminare gli oggetti usando CREATE ASSEMBLY o ALTER ASSEMBLY con un parametro di file. Se sono necessari oggetti di questo tipo, convertire il parametro file in un parametro binario. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di CLR in Istanza gestita di SQL di Azure

BULK INSERT

Titolo: BULK INSERT con origine dati BLOB non Azure non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
Istanza gestita di SQL di Azure non può accedere alle condivisioni file o alle cartelle di Windows. Vedere la sezione "Oggetti interessati" per gli usi specifici delle istruzioni BULK INSERT che non fanno riferimento a un BLOB di Azure. Gli oggetti con BULK INSERT cui l'origine non è Archiviazione BLOB di Azure non funzionano dopo la migrazione a Istanza gestita di SQL di Azure.

Consiglio
È necessario convertire le istruzioni BULK INSERT che usano file o condivisioni file locali per usare i file da Archiviazione BLOB di Azure invece durante la migrazione a Gestione SQL di Azure.

Altre informazioni: Differenze tra inserimento massivo e OPENROWSET nell'istanza gestita di Azure SQL

Sicurezza CLR

Titolo: gli assembly CLR contrassegnati come SAFE o EXTERNAL_ACCESS sono considerati UNSAFE
Categoria: avviso

Descrizione
La modalità di sicurezza CLR Strict viene applicata in Istanza gestita di SQL di Azure. Questa modalità è abilitata per impostazione predefinita e introduce modifiche di rilievo per i database contenenti assembly CLR definiti dall'utente contrassegnati come SAFE o EXTERNAL_ACCESS.

Consiglio

CLR usa la Sicurezza dall'accesso di codice (CAS, Code Access Security) in .NET Framework, non più supportata come limite di sicurezza. Un assembly CLR creato con PERMISSION_SET = SAFE potrebbe essere in grado di accedere alle risorse di sistema esterne, chiamare codice non gestito e acquisire privilegi sysadmin. In SQL Server 2017 (14.x) e versioni successive, l'opzione sp_configure clr strict security migliora la sicurezza degli assembly CLR. clr strict security è abilitata per impostazione predefinita e considera gli assembly CLR SAFE e UNSAFE come se fossero contrassegnati EXTERNAL_ACCESS. È possibile disabilitare l'opzione clr strict security per la compatibilità con le versioni precedenti, ma questa operazione è sconsigliata.

Si consiglia di firmare tutti gli assembly con un certificato o una chiave asimmetrica tramite un account di accesso corrispondente che disponga dell'autorizzazione UNSAFE ASSEMBLY nel database master. Gli amministratori di SQL Server possono anche aggiungere assembly a un elenco di assembly, considerato attendibile dal motore di database. Per altre, vedere sys.sp_add_trusted_assembly.

Clausola COMPUTE

Titolo: la clausola COMPUTE non è più supportata ed è stata rimossa.
Categoria: avviso

Descrizione
La clausola COMPUTE genera totali visualizzati come colonne di riepilogo aggiuntive alla fine del set di risultati. Tuttavia, questa clausola non è più supportata in Istanza gestita di SQL di Azure.

Consiglio
Il modulo T-SQL deve essere riscritto usando invece l'operatore ROLLUP. Il codice seguente illustra come è possibile sostituire COMPUTE con 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;

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Provider di crittografia

Titolo: è stato trovato un uso di CREATE CRYPTOGRAPHIC PROVIDER o ALTER CRYPTOGRAPHIC PROVIDER, che non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
Istanza gestita di SQL di Azure non supporta le istruzioni CRYPTOGRAPHIC PROVIDER perché non è in grado di accedere ai file. Vedere la sezione Oggetti interessati per gli usi specifici delle istruzioni CRYPTOGRAPHIC PROVIDER. Gli oggetti con 'CREATE CRYPTOGRAPHIC PROVIDER' o 'ALTER CRYPTOGRAPHIC PROVIDER' non funzionano correttamente dopo la migrazione a Istanza gestita di SQL di Azure.

Consiglio
Esaminare gli oggetti con 'CREATE CRYPTOGRAPHIC PROVIDER' o 'ALTER CRYPTOGRAPHIC PROVIDER'. In tutti gli oggetti necessari rimuovere gli usi di queste funzionalità. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di Cryptographic Provider in Istanza gestita di SQL di Azure

Compatibilità del database

Titolo: Il livello di compatibilità del database inferiore a 100 non è supportato
Categoria: avviso

Descrizione
Il livello di compatibilità del database è uno strumento utile per la modernizzazione dei database poiché consente di aggiornare il motore di database di SQL Server e di preservare lo stato funzionale delle applicazioni che si connettono mantenendo lo stesso livello di compatibilità del database precedente all'aggiornamento. Istanza gestita di SQL di Azure non supporta i livelli di compatibilità inferiori a 100. Quando il database con livello di compatibilità inferiore a 100 viene ripristinato in Istanza gestita di SQL di Azure, il livello di compatibilità viene aggiornato a 100.

Consiglio
Valutare se la funzionalità dell'applicazione è intatta quando il livello di compatibilità del database viene aggiornato a 100 in Istanza gestita di SQL di Azure. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Livelli di compatibilità supportati in Istanza gestita di SQL di Azure

Alias delle entità database

Titolo: SYS.DATABASE_PRINCIPAL_ALIASES non è più supportato ed è stato rimosso.
Categoria: problema

Descrizione
sys.database_principal_aliases non è più supportato ed è stato rimosso in Istanza gestita di SQL di Azure.

Consiglio
Usare ruoli anziché alias.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Opzione DISABLE_DEF_CNST_CHK

Titolo: l'opzione SET DISABLE_DEF_CNST_CHK non è più supportata ed è stata rimossa.
Categoria: problema

Descrizione
L'opzione SET DISABLE_DEF_CNST_CHK non è più supportata ed è stata rimossa in Istanza gestita di SQL di Azure.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Hint FASTFIRSTROW

Titolo: la query FASTFIRSTROW non è più supportata ed è stata rimossa.
Categoria: avviso

Descrizione
L'hint per la query FASTFIRSTROW non è più supportato ed è stato rimosso in Istanza gestita di SQL di Azure.

Consiglio
Anziché l'hint per la query FASTFIRSTROW, usare OPTION (FAST n).

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

FILESTREAM

Titolo: FILESTREAM e FileTable non sono supportati in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
La funzionalità FILESTREAM, che consente di archiviare dati non strutturati, ad esempio documenti di testo, immagini e video nel file system NTFS, non è supportata in Istanza gestita di SQL di Azure. Non è possibile eseguire la migrazione di questo database perché il backup contenente filegroup FILESTREAM non può essere ripristinato in Istanza gestita di SQL di Azure.

Consiglio
Caricare i file non strutturati nell'archivio BLOB di Azure e archiviare i metadati correlati a questi file (nome, tipo, percorso URL, chiave di archiviazione e così via) in Istanza gestita di SQL di Azure. Potrebbe essere necessario riprogettare l'applicazione per abilitare i BLOB di streaming da e verso Istanza gestita di SQL di Azure. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Blog sui BLOB di streaming da e verso SQL Azure

MS DTC eterogeneo

Titolo: BEGIN DISTRIBUTED TRANSACTION con server remoto non SQL Server non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
La transazione distribuita avviata da Transact SQL BEGIN DISTRIBUTED TRANSACTION e gestita da Microsoft Distributed Transaction Coordinator (MS DTC) non è supportata in Istanza gestita di SQL di Azure se il server remoto non è SQL Server.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti gli oggetti usando BEGIN DISTRIBUTED TRANSACTION. Valutare la possibilità di eseguire la migrazione dei database partecipanti a Istanza gestita di SQL di Azure in cui sono supportate le transazioni distribuite tra più istanze. Per altre informazioni, vedere Transazioni tra più server per Istanza gestita di SQL di Azure.

In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

MS DTC omogeneo

Titolo: BEGIN DISTRIBUTED TRANSACTION è supportato in più server per Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
La transazione distribuita avviata da Transact SQL BEGIN DISTRIBUTED TRANSACTION e gestita da Microsoft Distributed Transaction Coordinator (MS DTC) è supportata in più server per Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti gli oggetti usando BEGIN DISTRIBUTED TRANSACTION. Valutare la possibilità di eseguire la migrazione dei database partecipanti a Istanza gestita di SQL di Azure in cui sono supportate le transazioni distribuite tra più istanze. Per altre informazioni, vedere Transazioni tra più server per Istanza gestita di SQL di Azure.

In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Server collegato (provider non SQL)

Titolo: il server collegato con provider non SQL Server non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
I server collegati consentono a SQL Server Database Engine di eseguire comandi contro le fonti di dati OLE DB al di fuori dell'istanza di SQL Server. Il server collegato con provider non SQL Server non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Istanza gestita di SQL di Azure non supporta la funzionalità del server collegato se il provider di server remoto non è SQL Server come Oracle, Sybase e così via.

Per eliminare la necessità di server collegati, è consigliabile eseguire le azioni seguenti:

  • Identificare i set di dati dipendenti dai server non SQL remoti e prendere in considerazione la possibilità di spostarli nel database di cui viene eseguita la migrazione.
  • Eseguire la migrazione dei database dipendenti a destinazioni supportate, ad esempio Istanza gestita di SQL, database SQL, Azure Synapse e istanze di SQL Server.
  • Prendere in considerazione la creazione di un server collegato tra Istanza gestita di SQL di Azure e SQL Server nelle Macchine virtuali di Azure (VM SQL). Quindi, dalla macchina virtuale SQL, creare un server collegato a Oracle, Sybase e così via. Questo approccio prevede due hop, ma può essere usato come soluzione temporanea.
  • In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di Linked Server in Istanza gestita di SQL di Azure

Processo di unione

Titolo: il passaggio del processo di unione non è supportato in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Esegue un passaggio di processo tramite cui viene attivata l'utilità Agente merge repliche. L'Agente di merge della replica è un'utilità eseguibile che applica lo snapshot iniziale contenuto nelle tabelle di database ai Sottoscrittori. Consente inoltre di unire le modifiche ai dati incrementali apportate nel server di pubblicazione dopo la creazione dello snapshot iniziale e di riconciliare i conflitti in base alle regole configurate oppure utilizzando un sistema di risoluzione personalizzato. Il passaggio del processo di unione non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi che usano il passaggio del processo di unione e valutare se è possibile rimuovere il passaggio del processo o l'oggetto interessato. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

Dimensione del database dell'istanza gestita di SQL

Titolo: Istanza gestita di SQL di Azure non supporta dimensioni del database superiori a 16 TB.
Categoria: problema

Descrizione
Le dimensioni del database sono maggiori del numero massimo di spazio di archiviazione riservato dell'istanza. Non è possibile selezionare questo database per la migrazione perché le dimensioni superano il limite consentito.

Consiglio
Valutare se i dati possono essere archiviati o compressi o partizionati in più database. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Caratteristiche hardware di Istanza gestita di SQL di Azure

Dimensione dell'istanza gestita di SQL

Titolo: le dimensioni massime di archiviazione dell'istanza in Istanza gestita di SQL di Azure non possono essere superiori a 8 TB.
Categoria: avviso

Descrizione
Le dimensioni di tutti database sono maggiori del numero massimo di spazio di archiviazione riservato dell'istanza.

Consiglio
Valutare la possibilità di eseguire la migrazione dei database a Istanza gestita di SQL di Azure diverse o a SQL Server nelle Macchine virtuali di Azure se tutti i database devono esistere nella stessa istanza.

Altre informazioni: Caratteristiche hardware di Istanza gestita di SQL di Azure

Più file di log

Titolo: Istanza gestita di SQL di Azure non supporta più file di log.
Categoria: problema

Descrizione
SQL Server consente a un database di accedere a più file. Questo database include più file di log, che non sono supportati in Istanza gestita di SQL di Azure. Non è possibile eseguire la migrazione di questo database perché il backup non può essere ripristinato in Istanza gestita di SQL di Azure.

Consiglio
L'istanza gestita di Azure SQL Database supporta solo gli account di accesso SQL. È necessario eliminare tutti i file di log, ma uno dei file di log prima di eseguire la migrazione di questo database ad Azure:

ALTER DATABASE [database_name] REMOVE FILE [log_file_name]

Per altre informazioni, vedere Opzioni di database non supportate in Istanza gestita di SQL di Azure.

Colonna successiva

Titolo: le tabelle e le colonne denominate NEXT generano un errore In Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
Sono state rilevate tabelle o colonne denominate NEXT. Nelle sequenze introdotte in Microsoft SQL Server viene usata la funzione NEXT VALUE FOR dello standard ANSI. Le tabelle o le colonne denominate NEXT e column con alias VALUE con AS standard ANSI omesso possono causare un errore.

Consiglio
Riscrivere le istruzioni per includere la parola chiave AS standard ANSI durante l'aliasing di una tabella o di una colonna. Ad esempio, quando una colonna è denominata NEXT e tale colonna viene sottoposta ad alias come VALUE, la query SELECT NEXT VALUE FROM TABLE genera un errore e deve essere riscritta come SELECT NEXT AS VALUE FROM TABLE. Ad esempio, quando una colonna è denominata NEXT e tale colonna viene sottoposta ad alias come VALUE, la query SELECT Col1 FROMNEXT VALUE genera un errore e deve essere riscritta come SELECT Col1 FROM NEXT AS VALUE.

Left outer join non ANSI

Titolo: lo stile left outer join non ANSI non è più supportato ed è stato rimosso.
Categoria: avviso

Descrizione
Lo stile left outer join non ANSI non è più supportato ed è stato rimosso in Istanza gestita di SQL di Azure.

Consiglio
Utilizzare la sintassi di join ANSI.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Right outer join non ANSI

Titolo: right outer join non ANSI non è più supportato ed è stato rimosso.
Categoria: avviso

Descrizione
Lo stile right outer join non ANSI non è più supportato ed è stato rimosso in Istanza gestita di SQL di Azure.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Consiglio
Utilizzare la sintassi di join ANSI.

I database sono più di 100

Titolo: Istanza gestita di SQL di Azure supporta un massimo di 100 database per istanza.
Categoria: avviso

Descrizione
Il numero massimo di database supportati in Istanza gestita di SQL di Azure è 100, a meno che non sia stato raggiunto il limite di dimensioni di archiviazione dell'istanza.

Consiglio
Valutare la possibilità di eseguire la migrazione dei database a Istanza gestita di SQL di Azure diverse o a SQL Server nelle Macchine virtuali di Azure se tutti i database devono esistere nella stessa istanza.

Per altre informazioni, vedere Limiti delle risorse di Istanza gestita di SQL di Azure.

OPENROW SET (origine dati non BLOB)

Titolo: OpenRowSet usato nell'operazione bulk con l'origine dati di archiviazione BLOB non di Azure non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
OPENROWSET supporta le operazioni in blocco tramite un provider BULK predefinito che consente di leggere i dati da un file e restituirli come set di righe. OPENROWSET con origine dati di archiviazione BLOB non di Azure non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Un'istanza gestita di SQL Azure non può accedere a condivisioni file e cartelle di Windows e pertanto i file devono essere importati da un'archiviazione BLOB di Azure: Pertanto, nella funzione OPENROWSET è supportato solo il tipo di BLOB DATASOURCE. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze tra inserimento massivo e OPENROWSET nell'istanza gestita di Azure SQL

OPENROWSET (provider non SQL)

Titolo: OpenRowSet con provider non SQL non è supportato in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
Si tratta di un metodo alternativo per l'accesso alle tabelle di un server collegato e corrisponde a un metodo ad hoc eseguito una sola volta per la connessione e l'accesso ai dati remoti tramite OLE DB. OpenRowSet con provider non SQL non è supportato in Istanza gestita di SQL di Azure.

Consiglio
La funzione OPENROWSET può essere usata per eseguire query solo su istanze di SQL Server (gestite, locali o in macchine virtuali). Sono supportati i provider SQLNCLI, SQLNCLI11, SQLOLEDB e MSOLEDBSQL (scelta consigliata). Per il nuovo sviluppo, si consiglia Microsoft OLE DB Driver per SQL Server.

L'azione consigliata consiste nell'identificare i database dipendenti da server non SQL remoti e valutare la possibilità di spostarli nell'istanza di cui viene eseguita la migrazione.

Altre informazioni: Differenze tra inserimento massivo e OPENROWSET nell'istanza gestita di Azure SQL

Processi di PowerShell

Titolo: il passaggio del processo di PowerShell non è supportato in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Si tratta di un passaggio del processo che esegue script di PowerShell. Il passaggio del processo PowerShell non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi che usano il passaggio del processo PowerShell e valutare se è possibile rimuovere il passaggio del processo o l'oggetto interessato. Valutare se è possibile usare Automazione di Azure. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

Processo di lettura coda

Titolo: il passaggio del processo di lettura coda non è supportato in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Esegue un passaggio di processo tramite cui viene attivata l'utilità Agente di lettura coda repliche. L'agente di lettura coda repliche è un eseguibile che consente di leggere i messaggi archiviati in una coda o Message Queue e di applicare tali messaggi al server di pubblicazione. L'agente di lettura coda viene utilizzato con le pubblicazioni snapshot e transazionali che consentono l'aggiornamento in coda. Il passaggio del processo di lettura coda non è supportato in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi usando il passaggio del processo di lettura coda e valutare se il passaggio del processo o l'oggetto interessato può essere rimosso. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

RAISERROR

Titolo: le chiamate RAISERROR legacy devono essere sostituite con equivalenti moderni.
Categoria: avviso

Descrizione
Le chiamate RAISERROR come l'esempio seguente vengono definite in stile legacy perché non includono le virgole e le parentesi. RAISERROR 50001 'this is a test'. Questo metodo di chiamata a RAISE ERROR non è più supportato e rimosso in Istanza gestita di SQL di Azure.

Consiglio
Riscrivere l'istruzione usando la sintassi RAISERROR corrente o valutare se l'approccio moderno di BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH è fattibile.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

SQL Mail

Titolo: SQL Mail non è più supportato.
Categoria: avviso

Descrizione
SQL Mail non è più supportato e rimosso in Istanza gestita di SQL di Azure.

Consiglio
Usare la posta elettronica database.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

SystemProcedures110

Titolo: Istruzioni rilevate che fanno riferimento a procedure archiviate di sistema rimosse che non sono disponibili in Istanza gestita di SQL di Azure.
Categoria: avviso

Descrizione
Le seguenti procedure archiviate estese e di sistema non supportate non possono essere usate in Istanza gestita SQL di Azure - sp_dboption, sp_addserver, sp_dropalias,sp_activedirectory_obj, sp_activedirectory_scp, e sp_activedirectory_start.

Consiglio
Rimuovere i riferimenti alle procedure di sistema non supportate rimosse in Istanza gestita di SQL di Azure.

Altre informazioni: Funzionalità del motore di database non più disponibili in SQL Server

Processi Transact-SQL

Titolo: il passaggio del processo TSQL include comandi non supportati in Istanza gestita di SQL di Azure
Categoria: avviso

Descrizione
Si tratta di un passaggio di processo che esegue script Transact-SQL in base all'ora pianificata. Il passaggio del processo TSQL include comandi non supportati, che non sono supportati in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i processi che includono comandi non supportati in Istanza gestita di SQL di Azure e valutare se il passaggio del processo o l'oggetto interessato può essere rimosso. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze di SQL Server Agent in Istanza gestita di SQL di Azure

Flag di traccia

Titolo: Sono stati trovati flag di traccia non supportati in Istanza gestita di SQL di Azure
Categoria: avviso

Descrizione
Istanza gestita di SQL di Azure supporta solo un numero limitato di flag di traccia globali. I flag di traccia della sessione non sono supportati.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti i flag di traccia non supportati in Istanza gestita di SQL di Azure e valutare se possono essere rimossi. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Flag di traccia

Autenticazione di Windows

Titolo: gli utenti del database mappati a autenticazione di Windows (sicurezza integrata) non sono supportati in Istanza gestita di SQL di Azure
Categoria: avviso

Descrizione
Istanza gestita di SQL supporta due tipi di autenticazione:

  • SQL Authentication, che utilizza nome utente e password
  • Autenticazione Microsoft Entra, che usa le identità gestite da Microsoft Entra ID ed è supportata per i domini gestiti e integrati.

Gli utenti del database mappati con autenticazione di Windows (sicurezza integrata) non sono supportati in Istanza gestita di SQL di Azure.

Consiglio
Eseguire la federazione dell'istanza locale di Active Directory con Microsoft Entra ID. L'identità di Windows può quindi essere sostituita con le identità Microsoft Entra equivalenti. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: funzionalità di sicurezza Istanza gestita di SQL

xp_cmdshell

Titolo: xp_cmdshell non è supportata in Istanza gestita di SQL di Azure.
Categoria: problema

Descrizione
xp_cmdshell, che genera una shell dei comandi di Windows e trasmette una stringa per l'esecuzione, non è supportata in Istanza gestita di SQL di Azure.

Consiglio
Esaminare la sezione relativa agli oggetti interessati in Azure Migrate per visualizzare tutti gli oggetti usando xp_cmdshell e valutare se è possibile rimuovere il riferimento a xp_cmdshell o l'oggetto interessato. Prendere in considerazione l'esplorazione di Automazione di Azure che offre un servizio di automazione e configurazione basato sul cloud. In alternativa, eseguire la migrazione di SQL Server su VM di Azure.

Altre informazioni: Differenze tra stored procedure in Istanza gestita di SQL di Azure