Condividi tramite


Risoluzione dei problemi relativi al backup gestito di SQL Server in Azure

Questo argomento descrive le attività e gli strumenti che è possibile usare per risolvere gli errori che possono verificarsi durante le operazioni di Backup gestito di SQL Server in Microsoft Azure.

Informazioni generali

Il backup gestito di SQL Server su Microsoft Azure include controlli integrati e strumenti di risoluzione dei problemi, quindi in molti casi gli errori interni vengono gestiti direttamente dal processo stesso.

Un esempio di questo caso è l'eliminazione di un file di backup che causa un'interruzione della catena di log che influisce sulla recuperabilità. Il backup gestito di SQL Server in Microsoft Azure identificherà l'interruzione nella catena di log e pianifica un backup da eseguire immediatamente. È tuttavia consigliabile monitorare lo stato e risolvere eventuali errori che richiedono l'intervento manuale.

Backup gestito di SQL Server su Microsoft Azure registra eventi ed errori usando le stored procedure di sistema, le viste di sistema e gli eventi estesi. Le viste di sistema e le stored procedure forniscono informazioni di configurazione per il Backup Gestito di SQL Server in Microsoft Azure, sullo stato dei backup pianificati e sugli errori catturati dagli Eventi Estesi. Il backup gestito di SQL Server in Microsoft Azure usa eventi estesi per acquisire gli errori da usare per la risoluzione dei problemi. Oltre alla registrazione degli eventi, i criteri di amministrazione intelligente di SQL Server forniscono uno stato di integrità che viene usato da un processo di notifica tramite posta elettronica per fornire notifiche o errori e problemi. Per altre informazioni, vedere Monitorare il backup gestito di SQL Server in Azure.

Il backup di SQL Server gestito su Microsoft Azure utilizza anche lo stesso logging che viene usato quando si esegue il backup manuale nell'archiviazione di Azure (SQL Server Backup su URL). Per ulteriori informazioni sui problemi relativi al backup su URL, consultare la sezione di risoluzione dei problemi in Best practice e risoluzione dei problemi per il backup su URL di SQL Server

Procedura generale per la risoluzione dei problemi

  1. Abilitare La notifica tramite posta elettronica per iniziare a ricevere messaggi di posta elettronica per gli errori e gli avvisi.

    In alternativa, è anche possibile eseguire smart_admin.fn_get_health_status periodicamente per controllare gli errori e i conteggi aggregati. Ad esempio, number_of_invalid_credential_errors è il numero di tentativi di backup intelligente di un backup ma si è verificato un errore di credenziale non valido. Number_of_backup_loops e number_of_retention_loops non sono errori, ma indicano il numero di volte in cui il thread di backup e il thread di conservazione hanno analizzato l'elenco dei database. In genere, quando @begin_time e @end_time non vengono forniti, la funzione mostra le informazioni degli ultimi 30 minuti, quindi in genere dovrebbero essere visualizzati valori diversi da zero per queste due colonne. Se sono zero, implica l'overload del sistema o anche il sistema non risponde. Per altre informazioni, vedere la sezione Risoluzione dei problemi di sistema più avanti in questo argomento.

  2. Esaminare i log eventi estesi per altre informazioni sugli errori e altri eventi associati.

  3. Usare le informazioni nei log per risolvere il problema. In caso di problemi o errori di sistema, potrebbe essere necessario riavviare il servizio o SQL Server Agent.

Cause comuni di errori

Di seguito è riportato l'elenco delle cause comuni che causano errori:

  1. Modifiche apportate alle credenziali SQL: Se il nome delle credenziali usate da Backup gestito di SQL Server in Microsoft Azure viene modificato o se viene eliminato, il backup gestito di SQL Server in Microsoft Azure non sarà in grado di eseguire i backup. La modifica deve essere applicata a Backup gestito di SQL Server alle impostazioni di configurazione di Microsoft Azure.

  2. Modifiche ai valori delle chiavi di accesso all'archiviazione: Se i valori delle chiavi di archiviazione vengono modificati per l'account Azure, ma le credenziali SQL non vengono aggiornate con i nuovi valori, il backup gestito di SQL Server in Microsoft Azure avrà esito negativo durante l'autenticazione nell'archiviazione e non riuscirà a eseguire il backup dei database configurati per l'uso di questo account.

  3. Modifiche all'account di archiviazione di Azure: L'eliminazione o la ridenominazione dell'account di archiviazione senza modifiche corrispondenti alle credenziali SQL causerà l'esito negativo del backup gestito di SQL Server in Microsoft Azure e non verranno eseguiti backup. Se si elimina un account di archiviazione, assicurarsi che i database siano riconfigurati con informazioni valide sull'account di archiviazione. Se un account di archiviazione viene rinominato o i valori delle chiavi vengono modificati, assicurarsi che queste modifiche vengano riflesse nelle credenziali SQL usate dal backup gestito di SQL Server in Microsoft Azure.

  4. Modifiche alle proprietà del database: Le modifiche apportate ai modelli di ripristino o la modifica del nome possono causare l'esito negativo dei backup.

  5. Modifiche al modello di recupero: Se il modello di recupero del database viene modificato in semplice da registrazione completa o con registrazione minima delle operazioni bulk, i backup verranno interrotti e i database verranno ignorati da Backup gestito di SQL Server in Microsoft Azure. Per altre informazioni, vedere Backup gestito di SQL Server in Azure: Interoperabilità e coesistenza

Messaggi di errore e soluzioni più comuni

  1. Errori durante l'abilitazione o la configurazione del backup gestito di SQL Server in Microsoft Azure:

    Errore: " Impossibile accedere all'URL di archiviazione. Specificare una credenziale SQL valida..." : è possibile che venga visualizzato questo e altri errori simili che fanno riferimento alle credenziali SQL. In questi casi, esaminare il nome delle credenziali SQL specificate e anche le informazioni archiviate nelle credenziali SQL, ovvero il nome dell'account di archiviazione e la chiave di accesso alle risorse di archiviazione e assicurarsi che siano correnti e valide.

    Errore: "... impossibile configurare il database. perché si tratta di un database di sistema": questo errore verrà visualizzato se si tenta di abilitare Il backup gestito di SQL Server in Microsoft Azure per un database di sistema. Il backup gestito di SQL Server in Microsoft Azure non supporta i backup per i database di sistema. Per configurare il backup per un database di sistema, usare altre tecnologie di backup di SQL Server, ad esempio piani di manutenzione.

    Errore: " ... Specificare un periodo di conservazione...." : è possibile che vengano visualizzati errori relativi al periodo di conservazione se non è stato specificato un periodo di conservazione per il database o l'istanza quando si configurano questi valori per la prima volta. È anche possibile che venga visualizzato un errore se si specifica un valore diverso da un numero compreso tra 1 e 30. Il valore consentito per il periodo di conservazione è un numero compreso tra 1 e 30.

  2. Errori di notifica tramite posta elettronica:

    Errore: "Posta elettronica database non è abilitato..." - Questo errore verrà visualizzato se si abilitano le notifiche di posta elettronica, ma Posta elettronica database non è configurato nell'istanza. È necessario configurare Posta elettronica database nell'istanza per poter ricevere la notifica dello stato di integrità del backup gestito di SQL Server in Microsoft Azure. Per informazioni su come abilitare la posta elettronica database, vedere Configurare Posta elettronica database. È anche necessario abilitare SQL Server Agent per l'uso di Posta elettronica database per le notifiche. Per altre informazioni, vedere Prima di iniziare.

    Di seguito è riportato un elenco di numeri di errore che potrebbero essere visualizzati associato alle notifiche tramite posta elettronica:

    • ErrorNumber: 45209

    • ErrorNumber: 45210

    • ErrorNumber: 45211

  3. Errori di connettività:

    • Errori relativi alla connettività SQL: Questi errori si verificano quando si verificano problemi di connessione all'istanza di SQL Server. Gli eventi estesi espongono questi tipi di errori tramite il canale di amministrazione. Di seguito sono riportati i due eventi estesi che potrebbero verificarsi per gli errori correlati a questo tipo di problemi di connettività:

      FileRetentionAdminXEvent con event_type = SqlError. Per informazioni dettagliate su questo errore, esaminare le error_code, le error_message e le stack_trace dell'evento. Il error_code è il numero di errore di SqlException.

      SmartBackupAdminXevent con i seguenti prefissi di messaggi/messaggio.

      "Si è verificato un errore interno durante la configurazione delle impostazioni predefinite di Backup gestito di SQL Server in Azure. L'errore potrebbe essere temporaneo."

      "Probabilmente si verificano problemi di connettività con SQL Server. Ignorare il database nell'iterazione corrente."

      Impossibile interrogare le informazioni sull'uso del log. L'errore potrebbe essere temporaneo. Ignoriamo il database nell'iterazione corrente.

      "Eccezione SQL rilevata durante il caricamento dei metadati dell'agente SSMBackup2WA. L'errore potrebbe essere temporaneo. L'operazione verrà ritentata."

      "SSMBackup2WA ha rilevato un'eccezione SQL mentre ... "

    • Errori di connessione all'account di archiviazione:

      Le eccezioni di archiviazione vengono segnalate in FileRetentionAdminXEvent con event_type = XstoreError. Per informazioni dettagliate sull'errore, esaminare le error_message e le stack_trace dell'evento.

      Poiché il backup gestito di SQL Server usa la tecnologia Backup to URL sottostante, gli errori correlati alla connettività di archiviazione si applicano a entrambe le funzionalità. Per altre informazioni sui passaggi per la risoluzione dei problemi, vedere la sezione relativa alla risoluzione dei problemi dell'articolo Procedure consigliate per il backup di SQL Server nell'URL e risoluzione dei problemi .

Risoluzione dei problemi di sistema

Di seguito sono riportati alcuni scenari in cui si verifica un problema con il sistema (SQL Server, SQL Server Agent) e i relativi effetti sul backup gestito di SQL Server in Microsoft Azure:

  • Sqlservr.exe smette di rispondere o smette di funzionare quando il backup gestito di SQL Server in Microsoft Azure è in esecuzione: Se SQL Server smette di funzionare, SQL Agent viene arrestato normalmente, anche il backup gestito di SQL Server in Microsoft Azure si arresta e gli eventi vengono registrati nel file SQL Agent.out.

    Se SQL Server smette di rispondere, gli eventi vengono registrati nel canale di amministrazione. Esempio del registro eventi:

    Errore SQL (motore non rispondente o errore sqlException: SqlException:
    il codice di errore, il messaggio e lo stacktrace verranno visualizzati in un canale di amministrazione xevent, insieme ad alcune informazioni aggiuntive, ad esempio :
    "Probabilmente si verificano problemi di connettività con SQL Server. Ignorare il database nell'iterazione corrente"

  • SQL Agent smette di rispondere o smette di funzionare quando è in esecuzione il backup gestito di SQL Server in Microsoft Azure:

    Se SQL Agent smette di funzionare, anche il backup gestito di SQL Server su Microsoft Azure si arresta e gli eventi vengono registrati nel canale di amministrazione. Questo è simile agli scenari in cui SQL Server smette di rispondere.

    Se SQL Agent smette di rispondere, il backup gestito di SQL Server in Microsoft Azure non sarà in grado di continuare con le operazioni di backup e gli eventi vengono registrati nel canale di amministrazione. Un esempio del registro degli eventi:

    Blocchi del processo: vedere xevent del canale di amministrazione
    "Un aggiornamento dello stato di avanzamento non è stato ricevuto da SQL Server in più di " + Constants.DBBackupInfoMsgMaxWaitTime + " ore per il backup del database. SSM Cloud Backup continuerà ad attendere."

Se è stata abilitata la notifica tramite posta elettronica, si riceverà una notifica che include il numero di cicli di backup e il numero di cicli di conservazione. Se il valore restituito nella notifica per una o entrambe queste due colonne è zero, potrebbe essere un'indicazione che il sistema non risponde.

Avvertimento

I processi interni che generano i risultati per il report presuppongono che i log di diagnostica del motore si trovino nella stessa posizione del log degli errori di SQL Agent, che per impostazione predefinita si trova nella stessa cartella dei log degli errori dell'istanza di SQL Server. Se i log di diagnostica del motore vengono spostati in un percorso diverso dal percorso del log degli errori di SQL Agent, il sistema non riesce a trovare i log di diagnostica del backup intelligente e quindi il report nella notifica di posta elettronica potrebbe non essere corretto. Ad esempio, è possibile che venga visualizzato un valore pari a 0 in tutti i campi segnalati, inclusi il numero di cicli di backup e il numero di cicli di conservazione. In questo caso, in cui i log di diagnostica vengono spostati in un percorso diverso, potrebbe non significare che il sistema non risponde, ma che il sistema non è in grado di trovare i log. Assicurarsi che il percorso dei log di diagnostica e dei log degli errori di SQL Agent sia lo stesso. Per verificare il percorso corrente dei log di diagnostica, è possibile usare sys.dm_os_server_diagnostics_log_configurations. La path colonna restituisce il percorso corrente dei log di diagnostica del motore. Deve trovarsi nella stessa cartella dei log degli errori di SQL Agent. È possibile ottenere il percorso del log degli errori di SQL Agent tramite la procedura memorizzata dbo.sp_get_sqlagent_properties.

Controllare i registri degli eventi estesi per visualizzare i dettagli degli errori. correggere gli errori o riavviare SQL Server Agent per correggere la situazione.