Condividi tramite


Risolvere i problemi durante la migrazione a Istanza gestita di SQL di Azure

Questo articolo illustra come risolvere i problemi comuni che possono verificarsi durante la migrazione di database SQL Server a Istanza gestita di SQL di Azure usando SQL Server migrazione in Azure Arc.

Annotazioni

È possibile fornire commenti e suggerimenti sull'esperienza di migrazione direttamente al gruppo di prodotti.

Versione dell'agente Arc

Quando si usa SQL Server migrazione in Azure Arc, alcune funzionalità richiedono una versione minima dell'agente Arc. L'agente Arc è un eseguibile che viene eseguito insieme all'istanza di SQL Server per fornire la connettività a Azure. Mantenere sempre aggiornata la versione dell'agente Arc per ottenere le correzioni e gli aggiornamenti più recenti.

Con gli aggiornamenti automatici abilitati, l'agente Arc rimane aggiornato automaticamente. Tuttavia, quando viene eseguita una nuova versione dell'agente Arc, l'aggiornamento può richiedere alcuni giorni per raggiungere tutti i server. È possibile velocizzare il processo eseguendo manualmente un aggiornamento su richiesta dell'agente Arc tramite il portale di Azure o le interfacce della riga di comando.

Se viene visualizzato l'errore seguente quando si accede alla migrazione Database nel portale di Azure, è necessario aggiornare l'agente Arc a una versione supportata:

To enable migration and monitoring capabilities, 
please update your Azure Arc agent extension "WindowsAgentSQLServer" to the latest version.

Problemi dell'agente Arc

Se si verificano problemi con l'agente Arc, ad esempio uno stato di estensione non integro o un'istanza di SQL Server disconnessa, usare la guida alla risoluzione dei problemi di estensione seguente: Troubleshoot Azure estensione per SQL Server.

Problemi di valutazione dell'idoneità per la migrazione

Il sistema esegue le valutazioni di prontezza della migrazione ogni domenica alle 23:00 locali al server. Le valutazioni per le istanze di SQL Server appena abilitate da Azure Arc possono richiedere diversi giorni per essere visualizzate nel portale di Azure. Usare Esegui valutazione per attivare una valutazione su richiesta. La valutazione viene visualizzata dopo alcuni minuti.

Se la pagina delle valutazioni dell'idoneità per la migrazione del database è vuota nel portale di Azure, la valutazione pianificata probabilmente non è stata eseguita o si è verificato un problema durante l'esecuzione della valutazione nell'istanza di SQL Server. La disabilitazione dell'agente Arc impedisce l'esecuzione delle valutazioni. Verificare che l'agente Arc sia abilitato. Per altre informazioni, vedere Modificare le impostazioni di valutazione.

Considerare il problema noto seguente:

  • Quando xp_cmdshell è abilitato e usato, la valutazione registra un avviso per Istanza gestita di SQL perché è comunque possibile eseguire la migrazione del database. Tuttavia, interrompe la funzionalità dell'oggetto che usa xp_cmdshellin modo specifico . Utilizzare le indicazioni fornite nella valutazione per mitigare il problema.

Se si verificano problemi, contattare supporto tecnico Microsoft:

  • I report di valutazione non vengono visualizzati nel portale anche dopo l'ora pianificata.
  • La disponibilità dei dati sulle prestazioni non aumenta dopo una settimana di raccolta dei dati.

Visualizza il log attività di Azure per i problemi di migrazione

Il log attività nel portale di Azure, quando si accede da una risorsa, fornisce informazioni dettagliate sugli eventi a livello di risorsa che si verificano in Azure. Queste informazioni dettagliate includono informazioni su quando si modificano o si eliminano risorse, nonché informazioni dettagliate sull'integrità dei servizi e su altri eventi importanti.

Durante la risoluzione dei problemi di migrazione ad Istanza gestita di SQL di Azure utilizzando la migrazione di SQL Server in Azure Arc, il registro delle attività è una risorsa preziosa per identificare i problemi e comprendere la sequenza di eventi che hanno causato un problema.

Per accedere al log attività nel portale di Azure per l'istanza di SQL Server abilitata come risorsa Azure Arc, segui i seguenti passaggi:

  1. Passare all'istanza di SQL Server abilitata per risorsa di Azure Arc nel portale Azure.

  2. Selezionare Log attività dal menu della risorsa:

    Screenshot del registro attività evidenziato per una risorsa di istanza di SQL Server nel portale di Azure.

È anche possibile accedere al log attività a livello di sottoscrizione per una visualizzazione più ampia degli eventi in tutte le risorse nella sottoscrizione selezionando l'icona della campana di notifica della barra di spostamento superiore e quindi selezionando Altri eventi nel log attività:

Screenshot dell'icona a forma di campana di notifica evidenziata nel Azure portal.

Selezionare un evento dal log attività per aprire un riquadro dei dettagli dell'evento. Usare le schede Riepilogo e JSON per visualizzare informazioni dettagliate sull'evento, inclusi i messaggi di errore specifici. Se si crea una richiesta di supporto, comunicare queste informazioni con il maggior numero possibile di dettagli.

Nuovi database non disponibili nel portale di Azure

I database aggiunti di recente all'istanza di SQL Server potrebbero non essere immediatamente visibili nel portale di Azure quando si tenta di selezionare i database per la migrazione. Ciò è dovuto al fatto che l'agente Arc richiede circa un'ora per aggiornare automaticamente l'elenco di database.

Per risolvere questo problema, è possibile riavviare il servizio Arc per attivare un aggiornamento immediato dell'elenco di database.

In Windows usare il comando seguente in un prompt dei comandi con privilegi elevati nel server che ospita l'istanza di SQL Server:

Restart-Service himds
Restart-Service gcarcservice
Restart-Service extensionservice

Attendere il riavvio dei servizi e quindi usare il comando seguente per verificare che il servizio sia in esecuzione con il comando seguente:

& "$env:ProgramW6432\AzureConnectedMachineAgent\azcmagent.exe" show

Nei server Linux usare il comando seguente in un terminale con privilegi elevati:

sudo systemctl restart himdsd
sudo systemctl restart gcad
sudo systemctl restart extd

Attendere il riavvio dei servizi e quindi usare il comando seguente per verificare che il servizio sia in esecuzione con il comando seguente:

azcmagent show

Passare alla pagina Databases nel portale di Azure per l'istanza di SQL Server e selezionare Refresh per visualizzare i database appena aggiunti. È ora possibile selezionare questi nuovi database per la migrazione.

In questa sezione vengono descritti alcuni dei problemi comuni relativi alla funzionalità di collegamento Istanza gestita durante la migrazione ad Istanza gestita di SQL di Azure tramite la migrazione di SQL Server in Azure Arc.

Service Pack non corretto installato

Assicurarsi di avere installato appropriate SQL Server Service Pack (SP) o aggiornamento cumulativo (CU).

È possibile verificare la versione corretta eseguendo il comando T-SQL seguente nell'istanza di SQL Server:

EXEC sp_certificate_add_issuer @CERTID, N'*.database.windows.net'

Se viene visualizzato l'errore che SQL Server non riesce a trovare la stored procedure sp_certificate_add_issuer, è probabile che non sia installato il pacchetto di manutenzione appropriato, ad esempio Azure Connect Feature Pack. Installare gli aggiornamenti di manutenzione necessari e riprovare.

Funzionalità del gruppo di disponibilità AlwaysOn disabilitata

Verificare che la funzionalità Always On del gruppo di disponibilità sia abilitata nell'istanza di SQL Server. Il collegamento Istanza gestita richiede che la funzionalità del gruppo di disponibilità AlwaysOn sia abilitata per le funzionalità appropriate.

Uso di SQL Server 2016

Per SQL Server 2016 (13.x), è necessario completare i passaggi aggiuntivi descritti in Prepare SQL Server 2016 prerequisiti per il collegamento. Questi passaggi aggiuntivi non sono necessari per SQL Server 2017 (14.x) e versioni successive supportate dal collegamento.

Problemi relativi alla connettività di rete

La corretta connettività tra l'ambiente SQL Server e Istanza gestita di SQL di Azure è essenziale per il funzionamento della funzionalità di collegamento Istanza gestita. Se si verificano problemi di connettività di rete, tenere presenti i punti seguenti:

  • Il collegamento Istanza gestita non funziona su una rete pubblica, quindi la connessione tra l'istanza di SQL Server e Istanza gestita di SQL di Azure deve essere privata, ad esempio usando una VPN.
  • È possibile testare la connettività direttamente dal portale Azure come parte del processo di migrazione. Se il test di connessione ha esito positivo nel portale, ma il collegamento non può essere creato, controllare il log attività per informazioni dettagliate sull'errore. È anche possibile verificare manualmente la connettività usando Transact-SQL e SQL Server Agent.
  • Verificare la presenza di firewall aziendali nella rete. Anche se la connettività di rete può sembrare funzionante, è possibile che i firewall blocchino tipi specifici di pacchetti usati SQL Server per i gruppi di disponibilità distribuiti. Verificare che i firewall non blocchino o filtrino i tipi di pacchetti.

Quando si avvia il processo di migrazione dei collegamenti Istanza gestita, possono essere visualizzati gli avvisi seguenti. È possibile procedere con la migrazione nonostante questi avvisi:

  • Warning: Database Mirroring Endpoint does not exist
  • Warning: Database Mirroring Endpoint is not secure with a certificate
  • Warning: Database Mirroring Endpoint is not enabled
  • Warning: Database Mirroring Endpoint encryption algorithm is not set to AES

Questi avvisi sono attualmente un problema noto e il processo di migrazione li risolve automaticamente in modo da poter procedere con la migrazione.

Esaminare altri avvisi. Alcuni avvisi potrebbero richiedere una risoluzione da parte dell'utente prima di poter avviare la migrazione, mentre alcuni possono essere risolti al termine della migrazione.

La configurazione di un collegamento tramite il portale di Azure per la migrazione non è compatibile con i collegamenti esistenti creati manualmente, tramite SQL Server Management Studio (SSMS) o Transact-SQL (T-SQL). Se esiste già un collegamento, non è possibile creare un nuovo collegamento tramite il portale di Azure.

Se esiste già un collegamento nell'origine SQL Server o Istanza gestita di SQL di Azure destinazione, è necessario eseguire i passaggi seguenti prima di creare un nuovo collegamento tra tale origine e destinazione tramite il portale di Azure:

  1. Eliminare il collegamento manualmente da Istanza gestita di SQL usando Remove-AzSqlInstanceLink o az sql mi link delete da Azure Cloud Shell o un computer connesso con un contesto di Azure.
  2. Eliminare manualmente il collegamento da SQL Server usando DROP AVAILABILITY GROUP con il nome del gruppo di disponibilità distribuito associato al collegamento.
  3. Eliminare tutti i certificati correlati al collegamento dall'istanza di SQL Server usando DROP CERTIFICATE. I certificati da eliminare in genere contengono i valori seguenti: DigiKey PKI, Microsoft PKI, endpoint e database.windows.net. È possibile usare SELECT * FROM sys.certificates per elencare tutti i certificati in SQL Server.
  4. Eliminare tutti i certificati correlati al collegamento da Istanza gestita di SQL usando Remove-AzSqlInstanceServerTrustCertificate o az sql mi partner-cert delete da Azure Cloud Shell o da un computer connesso con un contesto di Azure. È possibile usare Get-AzSqlInstanceServerTrustCertificate o az sql mi partner-cert show per elencare i certificati di autenticazione esistenti in Istanza gestita di SQL.
  5. I passaggi precedenti cancellano tutti i certificati di autenticazione correlati ai collegamenti generati per un collegamento creato manualmente. Se non si usa un gruppo di disponibilità esistente in locale, è consigliabile eliminare l'endpoint del mirroring del database esistente usando DROP ENDPOINT. È possibile usare SELECT * FROM sys.endpoints per elencare tutti gli endpoint esistenti in SQL Server. È necessario eliminare il certificato associato all'endpoint prima di poter eliminare l'endpoint.

Risoluzione dei problemi dettagliata con XE Profiler

Per la risoluzione dettagliata dei problemi di collegamento, usare XE Profiler.

Problemi di migrazione del servizio di ripristino log

In questa sezione sono elencati i problemi comuni che possono verificarsi durante la migrazione utilizzando il Log Replay Service (LRS):

Impossibile elencare le directory in Archiviazione BLOB di Azure

Se viene visualizzato il messaggio di errore Unable to list directories quando si seleziona una directory nella pagina Nuova migrazione dei dati nel portale di Azure, l'utente attualmente connesso al portale non dispone del ruolo Storage Blob Data Reader assegnato all'account di archiviazione. Concedere all'utente l'accesso all'account di archiviazione per risolvere il problema.

Nessun risultato trovato nella directory

Se vedi il messaggio No results were found in directory quando selezioni una directory nella pagina Nuova Migrazione Dati del portale di Azure, non è disponibile alcun backup del database all'interno del contenitore di archiviazione Blob di Azure. Per risolvere questo problema, carica un backup completo del database nell'archiviazione BLOB di Azure.

Controllare lo stato di ripristino dei file

Per controllare il numero di file rilevati, accodati, ignorati o non ripristinabili durante la migrazione, usare la pagina Monitoraggio e transizione nel portale di Azure. Dopo l'avvio di una migrazione, vai alla pagina Monitoraggio e cutover e quindi seleziona il database in migrazione per aprire i dettagli della migrazione per quel database.

Errore 2009 - L'identità gestita non è configurata correttamente

Se la migrazione viene avviata correttamente ma non riesce con l'errore 2009 - managed identity is not set up properly, l'identità primaria per l'istanza gestita non dispone dell'autorizzazione Storage Blob Data Reader assegnata all'account di archiviazione BLOB Azure. Concedere l'accesso all'account di archiviazione all'identità gestita per risolvere il problema. Verificare che l'identità appropriata (l'identità gestita predefinita o un'identità personalizzata definita dall'utente) disponga delle autorizzazioni necessarie o che l'identità non sia stata modificata perché le autorizzazioni sono state concesse in origine. Se l'identità è cambiata, concedere le autorizzazioni appropriate alla nuova identità per risolvere il problema.

Risolvere i problemi di migrazione con DMS

L'avvio di un processo di migrazione LRS (Local Redundancy) in Azure Arc crea automaticamente un processo di migrazione del Servizio Migrazione Database (DMS) in modo da poter utilizzare il Servizio Migrazione Database di Azure nel portale di Azure per visualizzare ulteriori dettagli sul processo di migrazione.

Per visualizzare i dettagli del processo di lavoro di migrazione Archiviazione con ridondanza locale (LRS) nel DMS (Database Migration Service), seguire questa procedura:

  1. Passare a Azure Servizio Migrazione del database nel portale di Azure.

  2. Selezionare Tutte le risorse e quindi selezionare il processo di migrazione DMS associato alla migrazione LRS per aprire la pagina dei dettagli della migrazione.

    Screenshot della pagina

  3. Nella pagina dei dettagli della migrazione, selezionare Monitor migrations per visualizzare lo stato dei database migrati per una determinata istanza usando LRS. Selezionare Operazione riuscita, Annullata o Errore per visualizzare altri dettagli sullo stato.

    Un altro modo per accedere a questa pagina consiste nell'usare la risorsa Azure Servizio Migrazione del database aggiunta al gruppo di risorse che contiene il Istanza gestita di SQL di destinazione dopo l'avvio di una migrazione tramite Azure Arc.

Eliminare i processi di migrazione

I processi di migrazione LRS rimangono nella pagina Monitoraggio e cutover per 28 giorni dopo il completamento (sia riusciti che non riusciti). È possibile eliminare manualmente i processi se si desidera cancellarli dalla pagina di monitoraggio prima.

Per eliminare manualmente i processi, passare al processo di migrazione del DMS associato alla migrazione LRS, come descritto nella sezione precedente. Selezionare il processo di migrazione da eliminare, quindi usare il pulsante Elimina cestino per eliminare il processo. Confermare selezionando "Selezionare questa casella per confermare l'eliminazione". Questa azione cancella i processi dalla pagina Monitor e cutover in Azure Arc.

Problemi noti dopo la migrazione a Istanza gestita di SQL

Considerare i problemi noti seguenti dopo la migrazione a Istanza gestita di SQL di Azure:

Errori dell'operazione di ripristino dopo la migrazione a Istanza gestita di SQL

Se si esegue la migrazione di un database ad Istanza gestita di SQL di Azure da SQL Server 2019 e versioni successive con ripristino accelerato del database abilitato, ma configurato con l'archivio delle versioni permanente impostato su un valore diverso dal gruppo di file PRIMARY, potrebbero verificarsi errori durante le operazioni di ripristino nell'istanza gestita SQL di destinazione.

Per risolvere questo problema, assicurarsi di impostare l'archivio delle versioni persistent version store (PVS) su PRIMARY nel database di SQL Server di origine prima di eseguirne la migrazione a Istanza gestita di SQL. Se è già stata eseguita la migrazione del database senza impostare pvS su PRIMARY, è possibile impostarla nel database di origine SQL Server e quindi eseguire nuovamente la migrazione del database a Istanza gestita di SQL.

Impossibile usare il ripristino accelerato del database dopo la migrazione a Istanza gestita di SQL

A partire da SQL Server 2019, se si esegue la migrazione di un database su Istanza gestita di SQL di Azure e il database di origine ha il ripristino di database accelerato disabilitato, non è possibile usare il ripristino di database accelerato nell'istanza gestita di destinazione.

Per risolvere questo problema, assicurarsi di abilitare il ripristino accelerato del database nel database di SQL Server di origine prima di eseguirne la migrazione a Istanza gestita di SQL. Se è già stata eseguita la migrazione del database senza abilitare il ripristino accelerato del database, è possibile abilitarlo nel database di SQL Server di origine e quindi eseguire nuovamente la migrazione del database all'istanza gestita di SQL.

SQL Server 2017 e versioni precedenti non supportano il ripristino accelerato del database, quindi questo problema non si applica ai database migrati da tali versioni di SQL Server.

Impossibile usare Service Broker dopo la migrazione a Istanza gestita di SQL

Se si esegue la migrazione di un database a Istanza gestita di SQL di Azure e Service Broker è disabilitato nel database di origine, non è possibile usare Service Broker nell'istanza gestita di SQL di destinazione.

Per risolvere questo problema, assicurarsi di abilitare Service Broker nel database di origine SQL Server prima di eseguirne la migrazione a Istanza gestita di SQL. Se è già stata eseguita la migrazione del database senza abilitare Service Broker, è possibile abilitarlo nel database di SQL Server di origine e quindi eseguire nuovamente la migrazione del database a Istanza gestita di SQL.

Contatto Microsoft

È possibile contattare Microsoft per aprire un ticket di supporto con un problema riscontrato o per fornire commenti e suggerimenti direttamente al gruppo di prodotti.

Contattare il supporto tecnico

Usare https://aka.ms/azure-support per passare alla pagina Help + support nel portale di Azure e quindi seguire questa procedura per aprire un ticket di supporto correlato alla migrazione:

  1. Selezionare Crea una richiesta di supporto per aprire il riquadro Supporto e risoluzione dei problemi .
  2. Digitare migration nel campo di testo, quindi selezionare Nessuno dei precedenti sotto Con quale servizio hai un problema?
  3. Nell'elenco a discesa Selezionare un servizio selezionare SQL Server enabled by Azure Arc e quindi usare Next per continuare.
  4. Selezionare la sottoscrizione dall'elenco a discesa.
  5. Selezionare l'istanza di SQL Server abilitata dalla risorsa Azure Arc dall'elenco a discesa Resource e quindi selezionare Next.
  6. Selezionare Problemi di migrazione nel riquadro Si verifica uno dei problemi seguenti? e quindi selezionare Avanti.
  7. Selezionare Crea una richiesta di supporto nella barra di spostamento superiore all'interno del riquadro Supporto e risoluzione dei problemi per aprire il modulo del ticket di supporto.
  8. Usare i valori del sottotipo problema seguenti per indirizzare il problema alla coda di supporto appropriata:
    • Valutazione: se si verificano problemi con la valutazione dell'idoneità per la migrazione.
    • Migrazione LRS: Se si verificano problemi con una migrazione del servizio di Log Replay.
    • MI Link Data Migration: se si verificano problemi con una migrazione di collegamento istanza gestita.
    • Monitoraggio e cambio: se si verificano problemi durante il monitoraggio della migrazione o con il cambio.
    • Target Provisioning: se si verificano problemi durante il provisioning del Istanza gestita di SQL di Azure di destinazione.
  9. Usare Avanti per procedere con i passaggi rimanenti del modulo di richiesta di supporto e quindi selezionare Crea per inviare la richiesta di supporto.

Inviare commenti e suggerimenti al gruppo di prodotti

È possibile fornire commenti e suggerimenti al gruppo di prodotti per migliorare l'esperienza di migrazione. Usare il collegamento seguente per inviare commenti e suggerimenti: