Aggiornamento del log shipping a SQL Server 2016 (Transact-SQL)Upgrading Log Shipping to SQL Server 2016 (Transact-SQL)

In questo argomento si applica a: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse Durante l'aggiornamento da una configurazione per il log shipping di SQL ServerSQL Server a una nuova versione di SQL Server 2017SQL Server 2017, un nuovo Service Pack di SQL ServerSQL Server o un aggiornamento cumulativo di SQL ServerSQL Server, l'aggiornamento dei server di log shipping nell'ordine appropriato consentirà di preservare la soluzione di ripristino di emergenza per il log shipping. When upgrading from a SQL ServerSQL Server log shipping configuration to a new SQL Server 2017SQL Server 2017 version, a new SQL ServerSQL Serverservice pack, or a SQL ServerSQL Servercumulative update, upgrading your log shipping servers in the appropriate order will preserve your log shipping disaster recovery solution.

Nota

Lacompressione dei backup è stata introdotta in SQL Server 2008 Enterprise EditionSQL Server 2008 Enterprise.Backup compression was introduced in SQL Server 2008 Enterprise EditionSQL Server 2008 Enterprise. In una configurazione per il log shipping aggiornata viene usata l'opzione di configurazione a livello di server backup compression default per controllare se la compressione dei backup viene usata per i file di backup del log delle transazioni.An upgraded log shipping configuration uses the backup compression default server-level configuration option to control whether backup compression is used for the transaction log backup files. Il comportamento della compressione dei backup relativa ai backup del log può essere specificato per ogni configurazione per il log shipping.The backup compression behavior of log backups can be specified for each log shipping configuration. Per altre informazioni, vedere Configurare il log shipping (SQL Server).For more information, see Configure Log Shipping (SQL Server).

Contenuto dell'argomentoIn This Topic:

PrerequisitiPrerequisites

Prima di iniziare, esaminare le informazioni seguenti:Before you begin, review the following important information:

  • Supported Version and Edition Upgrades: verificare che sia possibile eseguire l'aggiornamento a SQL Server 2016 dalla versione del sistema operativo Windows e di SQL Server.Supported Version and Edition Upgrades: Verify that you can upgrade to SQL Server 2016 from your version of the Windows operating system and version of SQL Server. Ad esempio, non è possibile eseguire l'aggiornamento diretto da un'istanza di SQL Server 2005 a SQL Server 2017SQL Server 2017.For example, you cannot upgrade directly from a SQL Server 2005 instance to SQL Server 2017SQL Server 2017.

  • Choose a Database Engine Upgrade Method: selezionare il metodo e la procedura di aggiornamento appropriati in base alla verifica degli aggiornamenti della versione e dell'edizione supportate e anche agli altri componenti installati nell'ambiente interessato per aggiornare i componenti nell'ordine corretto.Choose a Database Engine Upgrade Method: Select the appropriate upgrade method and steps based on your review of supported version and edition upgrades and also based on other components installed in your environment to upgrade components in the correct order.

  • Pianificare e testare il piano di aggiornamento del motore di database: esaminare le note sulla versione, i problemi di aggiornamento noti e l'elenco di controllo pre-aggiornamento e sviluppare e testare il piano di aggiornamento.Plan and Test the Database Engine Upgrade Plan: Review the release notes and known upgrade issues, the pre-upgrade checklist, and develop and test the upgrade plan.

  • Hardware and Software Requirements for Installing SQL Server 2016: esaminare i requisiti software per l'installazione di SQL Server 2017SQL Server 2017.Hardware and Software Requirements for Installing SQL Server 2016: Review the software requirements for installing SQL Server 2017SQL Server 2017. Se è necessario software aggiuntivo, installarlo in ogni nodo prima di iniziare il processo di aggiornamento per ridurre al minimo eventuali tempi di inattività.If additional software is required, install it on each node before you begin the upgrade process to minimize any downtime.

Protezione dei dati prima dell'aggiornamentoProtect Your Data Before the Upgrade

Prima di eseguire un aggiornamento del log shipping, è consigliabile proteggere i dati.As a best practice, we recommend that you protect your data before a log shipping upgrade.

Per proteggere i datiTo protect your data

  1. Eseguire un backup completo di ciascun database primario.Perform a full database backup on every primary database.

    Per altre informazioni, vedere Creare un backup completo del database (SQL Server).For more information, see Create a Full Database Backup (SQL Server).

  2. Eseguire il comando DBCC CHECKDB in ciascun database primario.Run the DBCC CHECKDB command on every primary database.

Importante

Assicurarsi di disporre di spazio sufficiente nel server primario per contenere le copie di backup del log per tutto il tempo previsto per l'aggiornamento dei server secondari.Ensure that you have sufficient space on your primary server to hold the log backup copies for as long as the upgrade of the secondaries is expected to take. Se è previsto il failover su un server secondario, la stessa considerazione è valida per il server secondario, ovvero il nuovo primario.If you are failing over to a secondary, this same concern applies to the secondary (the new primary).

Aggiornamento dell'istanza del server di monitoraggio (facoltativo)Upgrading the (Optional) Monitor Server Instance

L'istanza del server di monitoraggio, se presente, può essere aggiornata in qualsiasi momento.The monitor server instance, if any, can be upgraded at any time. Non è tuttavia è necessario aggiornare il server di monitoraggio facoltativo quando si aggiornano i server primario e secondari.However, you do not need to upgrade the optional monitor server when you upgrade the primary and secondary servers.

Durante l'aggiornamento del server di monitoraggio, la configurazione per il log shipping continua a funzionare, ma lo stato relativo non viene registrato nelle tabelle sul monitorWhile the monitor server is being upgraded, the log shipping configuration continues to work, but its status is not recorded in the tables on the monitor. e non verrà attivato alcun avviso configurato.Any alerts that have been configured will not be triggered while the monitor server is being upgraded. Dopo l'aggiornamento, è possibile eseguire la stored procedure di sistema sp_refresh_log_shipping_monitor per aggiornare le informazioni contenute nelle tabelle di monitoraggio.After the upgrade, you can update the information in the monitor tables by executing the sp_refresh_log_shipping_monitor system stored procedure. Per altre informazioni su un server di monitoraggio, vedere Informazioni sul log shipping (SQL Server).For more information about a monitor server, see About Log Shipping (SQL Server).

Aggiornamento delle istanze del server secondarioUpgrading the Secondary Server Instances

Il processo di aggiornamento prevede prima di tutto l'aggiornamento delle istanze del server secondario di SQL ServerSQL Server a SQL Server 2017SQL Server 2017 prima di aggiornare l'istanza del server primario.The upgrade process involves upgrading the secondary server instances of SQL ServerSQL Server to SQL Server 2017SQL Server 2017 before upgrading the primary server instance. È sempre necessario aggiornare prima le istanze di SQL ServerSQL Server secondarie.Always upgrade the secondary SQL ServerSQL Server instances first. Il log shipping non viene interrotto durante tutto il processo di aggiornamento perché le istanze del server secondario aggiornate continuano a ripristinare i backup del log dall'istanza del server primario di SQL ServerSQL Server .Log shipping continues throughout the upgrade process because the upgraded secondary server instances continue to restore the log backups from SQL ServerSQL Server primary server instance. Se l'istanza del server primario viene aggiornata prima dell'istanza del server secondario, il log shipping non funzionerà perché un backup creato in una versione più recente di SQL ServerSQL Server non può essere ripristinato in una versione precedente di SQL ServerSQL Server.If the primary server instance is upgraded before the secondary server instance, log shipping will fail because a backup created on a newer version of SQL ServerSQL Server cannot be restored on an older version of SQL ServerSQL Server. È possibile aggiornare le istanze secondarie contemporaneamente o in sequenza, ma tutte le istanze secondarie devono essere aggiornate prima dell'istanza primaria, per evitare un errore di log shipping.You can upgrade the secondary instances simultanously or serially, but all secondary instance must be upgraded before the primary instance is upgraded to avoid a log shipping failure.

Durante l'aggiornamento di un'istanza del server secondario, i processi di copia e ripristino del log shipping non vengono eseguiti.While a secondary server instance is being upgraded, the log shipping copy and restore jobs do not run. Questo significa che i backup del log delle transazioni non ripristinati si accumulano nel server primario ed è necessario avere a disposizione spazio sufficiente per conservare questi backup non ripristinati.This means that unrestored transaction log backups will accumulate on the primary and you need to have sufficient space to hold these unrestored backups. La quantità di accumulo dipende dalla frequenza di esecuzione dei backup pianificati nell'istanza del server primario e dalla sequenza di aggiornamento delle istanze secondarie.The amount of accumulation depends on the frequency of scheduled backup on the primary server instance and the sequence in which you upgrade the secondary instances. Se è stato configurato un server di monitoraggio separato, inoltre, è possibile che vengano generati avvisi che indicano che i ripristini non sono stati eseguiti per un tempo maggiore rispetto all'intervallo configurato.Also, if a separate monitor server has been configured, alerts might be raised indicating restores have not been performed for longer than the configured interval.

Al termine dell'aggiornamento delle istanze del server secondario, i processi dell'agente di log shipping riprendono e continuano con la copia e il ripristino dei backup del log dall'istanza del server primario alle istanze del server secondario.Once the secondary server instances have been upgraded, the log shipping agents jobs resume and continue to copy and restore log backups from the primary server instance to the secondary server instances. La quantità di tempo necessaria affinché le istanze de server secondario aggiornino il database secondario varia a seconda del tempo impiegato per aggiornare le istanze del server secondario e della frequenza dei backup nel server primario.The amount of time required for the secondary server instances to bring the secondary database up to date varies, depending on the time taken to upgrade the secondary server instance and the frequency of the backups on the primary server.

Nota

Durante l'aggiornamento del server, il database secondario non viene aggiornato a un database di SQL Server 2017SQL Server 2017 .During the server upgrade, the secondary database itself is not upgraded to a SQL Server 2017SQL Server 2017 database. Verrà aggiornato solo se viene portato online avviando un failover del database di distribuzione dei log.It will get upgraded only if it is brought online by initiating a failover of the log shipped database. In teoria, questa condizione potrebbe persistere all'infinito.In theory, this condition could persist indefinitely. La quantità di tempo per aggiornare i metadati del database quando viene avviato un failover è limitata.The amount of time to upgrade the database metadata when a failover is initiated is small.

Importante

L'opzione RESTORE WITH STANDBY non è supportata per i database che richiedono aggiornamenti.The RESTORE WITH STANDBY option is not supported for a database that requires upgrading. Se un database secondario aggiornato è stato configurato tramite RESTORE WITH STANDBY, non sarà più possibile ripristinare i log delle transazioni dopo l'aggiornamento.If an upgraded secondary database has been configured by using RESTORE WITH STANDBY, transaction logs can no longer be restored after upgrade. Per riprendere il log shipping sul database secondario, sarà necessario configurarlo nuovamente sul server di standby.To resume log shipping on that secondary database, you will need to set up log shipping again on that standby server. Per altre informazioni sull'opzione STANDBY, vedere Ripristinare un backup del log delle transazioni (SQL Server).For more information about the STANDBY option, see Restore a Transaction Log Backup (SQL Server).

Aggiornamento dell'istanza del server primarioUpgrading the Primary Server Instance

Dato che il log shipping è principalmente una soluzione di ripristino di emergenza, lo scenario più semplice e più comune consiste nell'aggiornare l'istanza primaria sul posto e il database è semplicemente non disponibile durante l'aggiornamento.Since log shipping is primarily a disaster recovery solution, the simplest and most common scenario is to upgrade the primary instance in-place and the database is simply unavailable during this upgrade. Dopo che il server è stato aggiornato, viene attivata automaticamente la modalità online per il database determinandone pertanto l'aggiornamento.Once the server is upgraded, the database is automatically brought back online, which causes it to be upgraded. Dopo che il database è stato aggiornato, viene ripresa l'esecuzione dei processi per il log shipping.After the database is upgraded, the log shipping jobs resume.

Nota

Il log shipping supporta anche l'opzione per Eseguire il failover in un database secondario per il log shipping (SQL Server) e facoltativamente per la modifica dei ruoli tra i server primario e secondario per il log shipping (SQL Server).Log shipping also supports the option to Fail Over to a Log Shipping Secondary (SQL Server), and optionally Change Roles Between Primary and Secondary Log Shipping Servers (SQL Server). Dato però che il log shipping viene ormai configurato molto raramente come soluzione a disponibilità elevata dato che le opzioni più recenti sono molto più efficaci, il failover non consente in genere di ridurre al massimo i tempi di inattività, in quanto gli oggetti di database di sistema non verranno sincronizzati e fare in modo che i client possano individuare facilmente un server secondario alzato di livello e connettersi a tale server può essere veramente complicato.However, since log shipping is rarely configured as a high availability solution anymore (newer options are much more robust), failing over generally will not minimize downtime because system database objects will not be synchronized and enabling clients to easily locate and connect to a promoted secondary can be an ordeal.

Vedere ancheSee Also

Eseguire l'aggiornamento a SQL Server 2016 usando l'Installazione guidata (programma di installazione) Upgrade to SQL Server 2016 Using the Installation Wizard (Setup)
Installazione di SQL Server 2016 dal prompt dei comandi Install SQL Server 2016 from the Command Prompt
Configurare il log shipping (SQL Server) Configure Log Shipping (SQL Server)
Monitorare il log shipping (Transact-SQL) Monitor Log Shipping (Transact-SQL)
Tabelle e stored procedure relative al log shippingLog Shipping Tables and Stored Procedures