Configurare il processo di backup di BizTalk Server

Dopo aver installato e configurato BizTalk Server, configurare il processo Backup BizTalk Server per eseguire il backup dei dati.

A partire da BizTalk Server 2016 Feature Pack 2, è possibile eseguire il backup dei database e dei file di log in un account di archiviazione BLOB di Azure.

Panoramica

Il processo Backup BizTalk Server (BizTalkMgmtDb) include i passaggi seguenti:

  • Passaggio 1 : Impostare l'opzione di compressione: Abilitare o disabilitare la compressione durante il backup

  • Passaggio 2 - BackupFull: esegue backup completi del database dei database BizTalk Server

  • Passaggio 3 : MarkAndBackUpLog: esegue il backup dei log del database BizTalk Server

  • Passaggio 4 : Cancellare la cronologia dei backup: scegliere il tempo di conservazione della cronologia dei backup

Per configurare questo processo, è necessario:

  • Identificare i server SQL primario e di destinazione e altre opzioni di backup

  • Scegliere un account utente di Windows per eseguire il backup dei database e creare un account di accesso SQL Server per questo account

  • Eseguire il mapping di account di accesso al server SQL al ruolo del database BTS_BACKUP_USERS nei database di BizTalk Server

  • Assicurarsi che il servizio MSDTC sia attivo su tutti i nodi. In caso contrario, l'aggiunta di un server collegato tra il nodo di origine e il nodo di destinazione ha esito negativo.

Prima di iniziare

  • Alcune operazioni di configurazione e backup richiedono l'appartenenza al ruolo sysadmin SQL Server. Per eseguire il backup dei database BizTalk Server, accedere al server primario con un account membro del ruolo sysadmin Server SQL Server. BizTalk Server configurazione aggiunge il ruolo del database BTS_BACKUP_USERS. L'account utente usato per eseguire il backup dei database non richiede autorizzazioni di amministratore di sistema (sysadmin SQL Server ruolo) per tutti i server SQL coinvolti in un backup, ad eccezione del server primario.

  • Decidere quale account di accesso usare per eseguire i backup del database di BizTalk Server. È possibile usare un account locale e usare più account. Ma in genere è più semplice e più sicuro creare un account utente di dominio Windows dedicato in modo specifico per questo scopo. È necessario configurare l'account di accesso a SQL Server per l'utente corrente ed eseguire il mapping dell'utente a un account di accesso di SQL Server per tutti i server SQL coinvolti nel processo di backup, sia come server primari (origine) o come server secondari (destinazione). Assegnare questo utente al ruolo del database bizTalk BTS_BACKUP_USERS per ognuno dei database BizTalk Server di cui si esegue il backup.

  • Il processo backup BizTalk Server non elimina i file di backup obsoleti, quindi è necessario gestire manualmente tali file di backup per risparmiare spazio su disco. Dopo aver eseguito un nuovo backup completo del database, è necessario spostare i file di backup obsoleti in un dispositivo di archiviazione per recuperare spazio sul disco primario. Per gestire questi file, vedere i pacchetti SSIS .

  • BizTalk Server non scrive i dati di rilevamento direttamente nel database di rilevamento BizTalk; invece memorizza nella cache i dati nel database MessageBox e quindi lo sposta nel database Di rilevamento BizTalk. Se si verifica la perdita dei dati di MessageBox, potrebbero andare persi anche alcuni dati di rilevamento.

Prerequisiti

  • Accedere a SQL Server usando un account membro del ruolo sysadmin SQL Server.

  • Configurare il servizio SQL Server Agent per l'esecuzione con un account di dominio (opzione consigliata, ma è possibile usare anche account locali) e con account di accesso utente mappato su ogni istanza di SQL Server.

  • Per usare un account di archiviazione BLOB di Azure, è necessario un account di archiviazione per utilizzo generico, un contenitore all'interno dell'account di archiviazione BLOB, una firma di accesso condiviso (SAS) e una credenziale SQL usando la firma di accesso condiviso. Dopo aver creato, l'URL dell'endpoint del servizio BLOB è pronto, ad esempio https:// yourstorageaccount.blob.core.windows.net/containername.

    Suggerimento

    Se non si dispone di un account di archiviazione BLOB esistente configurato con una firma di accesso condiviso, lo script di PowerShell sas può crearlo e il contenitore. SQL Server Backup in URL fornisce una panoramica e i passaggi specifici.

Configurare il processo

  1. Nella SQL Server che ospita il database di Gestione BizTalk aprire SQL Server Management Studio e connettersi all'SQL Server.

  2. Espandere SQL Server Agent e espandere Processi.

  3. Fare clic con il pulsante destro del mouse su Backup BizTalk Server (BizTalkMgmtDb) e scegliere Proprietà. Nelle proprietà del processo selezionare Passaggi.

  4. Selezionare il passaggio Imposta opzione di compressione e selezionare Modifica:

    Questo passaggio chiama la sp_SetBackupCompression stored procedure nel database di gestione BizTalk (BizTalkMgmtDb) per impostare il valore nella adm_BackupSettings tabella. La stored procedure ha un parametro: @bCompression. Per impostazione predefinita, è impostato su 0 (la compressione del backup è disattivata). Per applicare la compressione, modificare il valore su 1:

    exec [dbo].[sp_SetBackupCompression] @bCompression = 1 /*0 - Do not use Compression, 1 - Use Compression */  
    

    Selezionare OK.

  5. Selezionare il passaggio BackupFull e selezionare Modifica. Nella casella Comando aggiornare i valori dei parametri:

    1. Frequenza: il valore predefinito è d (giornaliero); che è l'impostazione consigliata. Altri valori includono h (oraria), w (settimanale), m (mensile) o y (annuale).

    2. Nome: il valore predefinito è BTS. Il nome viene usato come parte del nome del file di backup.

    3. Percorso dei file di backup: sostituire "<percorso> di destinazione" con il percorso completo (il percorso deve includere le virgolette singole) nel computer e nella cartella in cui si desidera eseguire il backup dei database BizTalk Server o l'URL dell'endpoint del servizio BLOB a un account di archiviazione BLOB di Azure.

      Importante

      • Se si immette un percorso locale, è necessario copiare manualmente tutti i file nella stessa cartella nel sistema di destinazione ogni volta che il processo backup BizTalk Server crea nuovi file.

        Per usare un percorso remoto, immettere una condivisione UNC, ad esempio \\<ServerName SharedDrive\, dove ServerName>>è il nome del server in cui< si desiderano i file e <SharedDrive> è il nome dell'unità o della cartella condivisa.><\

        Il backup dei dati su una rete è soggetto agli eventuali problemi di rete. Quando si usa un percorso remoto, verificare che il backup abbia esito positivo al termine del processo di backup BizTalk Server.

      • Per evitare possibili perdite di dati, configurare il disco di backup in modo che sia diverso dai dischi di registro e dei dati di database. Questa operazione è necessaria per poter accedere ai backup in caso di problemi del disco dei dati o di registro.

      • Quando si esegue il backup in un account BLOB di Azure, immettere l'URL dell'endpoint del servizio BLOB e il nome del contenitore, elencati nelle proprietà del servizio BLOB nell'portale di Azure.

    4. facoltativo. Forzare il backup completo dopo errori di backup parziali (@ForceFullBackupAfterPartialSetFailure): il valore predefinito è 0. Se un backup del log non riesce, non vengono eseguiti backup completi fino a quando non viene raggiunto l'intervallo di frequenza di backup completo successivo. Sostituire con 1 se si vuole eseguire un backup completo ogni volta che si verifica un errore di backup del log.

    5. facoltativo. Ora locale per l'esecuzione del processo di backup (@BackupHour): il valore predefinito è NULL. Il processo di backup non è associato al fuso orario del computer BizTalk Server e viene eseguito all'ora UTC di mezzanotte (0000). Se si vuole eseguire il backup in un'ora specifica nel fuso orario del computer BizTalk Server, immettere un valore intero compreso tra 0 (mezzanotte) e 23 (11 PM) come ora locale.

    6. facoltativo. Usare l'ora locale (@UseLocalTime): indica alla procedura di usare l'ora locale. Il valore predefinito è 0 e usa l'ora UTC corrente – GETUTCDATE() – 2007-05-04 01:34:11.933. Se impostato su 1, usa l'ora locale – GETDATE() – 2007-05-03 18:34:11.933

    Nell'esempio seguente vengono creati i backup giornalieri alle 2:00 e archiviati nell'unità m:\ :

    exec [dbo].[sp_BackupAllFull_Schedule]   
    'd' /* Frequency */,   
    'BTS' /* Name */,   
    'm:\BizTalkBackups' /* location of backup files */,   
    '0' /* 0 (default) or 1 ForceFullBackupAfterPartialSetFailure */,   
    '2' /* local time hour for the backup process to run */  
    

    Nell'esempio seguente vengono creati backup settimanali all'ora UTC di mezzanotte e archiviati nell'account BLOB di Azure:

    exec [dbo].[sp_BackupAllFull_Schedule]   
    'w' /* Frequency */,   
    'BTS' /* Name */,   
    'http://yourstorageaccount.blob.core.windows.net/yourcontainer/' /* location of backup files */,   
    '1' /* 0 (default) or 1 ForceFullBackupAfterPartialSetFailure */
    

    Selezionare OK.

  6. Selezionare il passaggio MarkAndBackupLog e selezionare Modifica. Nella casella Comando aggiornare i valori dei parametri:

    1. @MarkName: fa parte della convenzione di denominazione per i file di backup: <Nome_database_Nome>_database_<<Nome>_log ><_Timestamp>

    2. @BackupPath: percorso di destinazione completo (incluse virgolette singole) nel computer e nella cartella per archiviare i log del database BizTalk Server o l'account di archiviazione BLOB di Azure e il contenitore. Il <percorso> di destinazione può anche essere locale o un percorso UNC a un altro server.

      Il passaggio MarkAndBackupLog contrassegna i log per il backup e quindi ne esegue il backup.

    Importante

    Per evitare potenziali perdite di dati e per migliorare le prestazioni, il <percorso> di destinazione deve essere impostato su un computer diverso o su disco rigido, diverso da quello usato per archiviare i log del database originali.

    Selezionare OK.

  7. Selezionare il passaggio Cancella cronologia backup e selezionare Modifica. Nella casella Comando aggiornare i valori dei parametri:

    1. @DaysToKeep: il valore predefinito è 14 giorni. Determina la durata della conservazione della cronologia di backup nella Adm_BackupHistory tabella. La cancellazione periodica della cronologia di backup consente di mantenere la Adm_BackupHistory tabella in una dimensione appropriata.

    2. facoltativo. @UseLocalTime: indica alla procedura di usare l'ora locale. Il valore predefinito è 0. Usa l'ora UTC corrente – GETUTCDATE() – 2007-05-04 01:34:11.933. Se impostato su 1, usa l'ora locale – GETDATE() – 2007-05-03 18:34:11.933

    exec [dbo].[sp_DeleteBackupHistory] @DaysToKeep=14, @UseLocalTime =1 
    

    Nota

    Questo passaggio non elimina i file di backup dal percorso di destinazione.

    Selezionare OK e chiudere tutte le finestre delle proprietà.

  8. facoltativo. Modificare la pianificazione del backup. Vedere Come pianificare il processo di backup BizTalk Server.

    Nota

    Il processo backup BizTalk Server viene eseguito la prima volta che viene configurato. Per impostazione predefinita, nelle esecuzioni successive, il processo backup BizTalk Server completa un backup completo una volta al giorno e completa i backup del log ogni 15 minuti.

  9. Fare clic con il pulsante destro del mouse sul processo di backup BizTalk Server e scegliere Abilita. Lo stato deve essere impostato su Operazione riuscita.

Eseguire Backup_Setup_All_Procs.sql e LogShipping_Destination_Logic.sql

BizTalk Server 2016 Feature Pack 2 (FP2) ha usato gli script Backup_Setup_All_Procs.sql e LogShipping_Destination_Logic.sql in \Program Files (x86)\Microsoft BizTalk Server *your version*\Schema.

Se il processo di backup BizTalk Server è già configurato e si vuole passare all'uso del BLOB di Azure (anziché di un disco), eseguire le operazioni seguenti:

  1. Nel SQL Server eseguire lo Backup_Setup_All_Procs.sql script su tutti i database personalizzati di cui viene eseguito il backup dal processo backup BizTalk Server. Per impostazione predefinita, FP2 aggiorna automaticamente i database BizTalk; non aggiorna database personalizzati ,ovvero i database nella adm_OtherBackupDatabases tabella in BizTalkMgmtDb.

    Il backup di database personalizzati fornisce altri dettagli sui database personalizzati.

  2. Se si usa il log shipping, eseguire lo script LogShipping_Destination_Logic.sql nel sistema di destinazione all'interno di SQL Server. Se non si usa il log shipping, non eseguire questo script.

    Configurare il sistema di destinazione per il log shipping fornisce altri dettagli sul sistema di destinazione.

Stored procedure sp_ForceFullBackup

La stored procedure sp_ForceFullBackup nel database BizTalkMgmtDb può essere usata per eseguire un backup completo ad hoc dei file di dati e di log. La stored procedure aggiorna la tabella adm_ForceFullBackup con un valore uguale a 1. Al successivo esecuzione del processo di backup BizTalk Server, viene creato un set di backup completo del database.

Passaggi successivi

Configurare il sistema di destinazione per il log shipping
Pianificare il processo di backup di BizTalk Server
Account di archiviazione di Azure
Backup di SQL Server nell'URL