Pianificare e testare il piano di aggiornamento del motore di databasePlan and test the database engine upgrade plan

Per eseguire correttamente l'aggiornamento di SQL ServerSQL Server , indipendentemente dall'approccio, è opportuna un'accurata pianificazione.To perform a successful SQL ServerSQL Server upgrade, regardless of approach, appropriate planning is required.

Note sulla versione e problemi di aggiornamento notiRelease notes and known upgrade issues

Prima di aggiornare il Motore di databaseDatabase Engine, vedere:Before upgrading the Motore di databaseDatabase Engine, review:

Elenco di controllo per la pianificazione pre-aggiornamentoPre-upgrade planning checklist

Prima di aggiornare Motore di databaseDatabase Engine, consultare il seguente elenco di controllo e gli argomenti correlati.Before upgrading the Motore di databaseDatabase Engine, review the following checklist and the associated topics. Questi argomenti si applicano a tutti gli aggiornamenti, indipendentemente dal metodo di aggiornamento, e consentono di determinare il metodo di aggiornamento più appropriato: aggiornamento in sequenza, nuovo aggiornamento dell'installazione o aggiornamento sul posto.These topics apply to all upgrades, regardless of upgrade method and will help you determine the most appropriate upgrade method: Rolling upgrade, new installation upgrade, or in-place upgrade. Ad esempio, potrebbe non essere possibile eseguire un aggiornamento in sequenza o sul posto se si esegue l'aggiornamento del sistema operativo, l'aggiornamento da SQL Server 2005 o l'aggiornamento da una versione a 32 bit di SQL Server.For example, you may not be able to perform an upgrade in-place or a rolling upgrade if you are upgrading the operating system, upgrading from SQL Server 2005, or upgrading from a 32-bit version of SQL Server. Per l'albero delle decisioni, vedere Choose a Database Engine Upgrade Method.For a decision tree, see Choose a Database Engine Upgrade Method.

  • Requisiti hardware e software: consultare i requisiti hardware e software per l'installazione di SQL ServerSQL Server.Hardware and software requirements: Review the hardware and software requirements to for installing SQL ServerSQL Server. Questi requisiti sono disponibili in: Hardware and Software Requirements for Installing SQL Server.These requirements can be found at: Hardware and Software Requirements for Installing SQL Server. Nel ciclo di pianificazione dell'aggiornamento è opportuno considerare l'aggiornamento dell'hardware (un hardware più recente è più veloce e può ridurre il periodo di licenza a causa di un minor numero di processori o del consolidamento di database e server) e l'aggiornamento del sistema operativo.A part of any upgrade planning cycle is to consider upgrading hardware (newer hardware is faster and may reduce licensing either due to fewer processors or due to database and server consolidation)and upgrading the operating system. Questi tipi di modifiche hardware e software influiranno sul tipo di metodo di aggiornamento.These types of hardware and software changes will affect the type of upgrade method you choose.

  • Ambiente corrente: eseguire ricerche nell'ambiente corrente per comprendere i componenti di SQL ServerSQL Server in uso e i client connessi all'ambiente.Current environment: Research your current environment to understand the SQL ServerSQL Server components that are being used and the clients that connect to your environment.

    Nota

    L'elenco precedente si applica anche a SQL Server 2017SQL Server 2017.The preceeding list also applies to SQL Server 2017SQL Server 2017.

  • Componenti di terze parti: determinare la compatibilità dei componenti di terze parti, ad esempio il backup integrato.Third party components: Determine the compatibility of third party components, such as integrated backup.

  • Ambiente di destinazione: verificare che l'ambiente di destinazione soddisfi i requisiti hardware e software e che supporti i requisiti del sistema originale.Target environment: Verify that your target environment meets the hardware and software requirements, and can support the original system's requirements. Ad esempio, l'aggiornamento potrebbe comportare il consolidamento di più istanze di SQL Server in un'unica e nuova istanza di SQL ServerSQL Server o la virtualizzazione dell'ambiente SQL ServerSQL Server su un cloud privato o pubblico.For example, your upgrade may involve the consolidation of multiple SQL Server instances to a single, new SQL ServerSQL Server instance, or the virtualization of your SQL ServerSQL Server environment to a private or public cloud.

  • Edizione: determinare la versione appropriata di SQL ServerSQL Server e i percorsi di aggiornamento appropriati per l'aggiornamento.Edition: Determine the appropriate edition of SQL ServerSQL Server for your upgrade, and determine the valid upgrade paths for the upgrade. Per informazioni dettagliate, vedere Supported Version and Edition Upgrades.For detailed information, see Supported Version and Edition Upgrades. Prima di eseguire l'aggiornamento da un'edizione di SQL ServerSQL Server a un'altra, verificare che le funzionalità attualmente in uso siano supportate nell'edizione a cui si desidera eseguire l'aggiornamento.Before you upgrade from one edition of SQL ServerSQL Server to another, verify that the functionality that you are currently using is supported in the edition to which you are upgrading.

    Nota

    Quando si esegue l'aggiornamento a SQL ServerSQL Server da una versione precedente di SQL ServerSQL Server Enterprise Edition, scegliere tra Enterprise Edition: licenze basate su core ed Enterprise Edition.When you upgrade SQL ServerSQL Server from a prior version of SQL ServerSQL Server Enterprise edition, choose between Enterprise Edition: Core-based Licensing and Enterprise Edition. Queste due edizioni differiscono solo per le modalità di gestione delle licenze.These Enterprise editions differ only with respect to the licensing modes. Per altre informazioni, vedere Compute Capacity Limits by Edition of SQL Server.For more information, see Compute Capacity Limits by Edition of SQL Server.

  • Compatibilità con le versioni precedenti: consultare l'argomento sulla compatibilità con le versioni precedenti del motore di database di SQL ServerSQL Server per esaminare i cambiamenti nel comportamento tra la versione SQL ServerSQL Server e SQL ServerSQL Server da cui si esegue l'aggiornamento.Backward compatibility: Review the SQL ServerSQL Server database engine backward compatibility topic to review changes in behavior between SQL ServerSQL Server and the SQL ServerSQL Server version from which you are upgrading. Vedere SQL Server Database Engine Backward Compatibility.See SQL Server Database Engine Backward Compatibility.

  • Preparazione aggiornamento: eseguire Preparazione aggiornamento di SQL ServerSQL Server per il supporto nell'analisi dei problemi che potrebbero bloccare il processo di aggiornamento o richiedere modifiche degli script esistenti o delle applicazioni a seguito di una modifica importante.Upgrade advisor: Run the SQL ServerSQL Server Upgrade Advisor to assist in diagnosing issues that might either block the upgrade process or require modification to existing scripts or applications due to a breaking change. SQL ServerSQL Server contiene una nuova versione di Preparazione aggiornamento per aiutare i clienti a prepararsi all'aggiornamento di un sistema esistente. contains a new version of the Upgrade Advisor to assist customers preparing to upgrade an existing system. Questo strumento è anche in grado di verificare i database esistenti per verificare che possano sfruttare nuove funzionalità, ad esempio l'estensione delle tabelle, al termine dell'aggiornamento.This tool also contains an ability to check your existing databases to see if they can leverage new features, such as Stretch Tables, after upgrade is complete.
    È possibile scaricare SQL ServerSQL ServerPreparazione aggiornamento qui.You can download SQL ServerSQL ServerUpgrade Advisor here.

  • Controllo configurazione sistema: eseguire il Controllo configurazione sistema (SCC, System Configuration Checker) di SQL ServerSQL Server per determinare se il programma di installazione di SQL Server rileva problemi di blocco prima di pianificare effettivamente l'aggiornamento.System configuration checker: Run the SQL ServerSQL Server System Configuration Checker (SCC) to determine if the SQL Server setup program detects any blocking issues before you actually schedule the upgrade. Per altre informazioni, vedere Check Parameters for the System Configuration Checker.For more information, see Check Parameters for the System Configuration Checker.

  • Aggiornamento di tabelle con ottimizzazione per la memoria: quando si aggiorna un'istanza del database SQL Server 2014 che contiene tabelle con ottimizzazione per la memoria in SQL Server 2016, il processo di aggiornamento richiederà più tempo per convertire le tabelle con ottimizzazione per la memoria nel nuovo formato su disco e il database rimane offline durante questa procedura.Upgrading memory-optimized tables: When upgrading a SQL Server 2014 database instance containing memory-optimized tables to SQL Server 2016, the upgrade process will require additional time to convert the memory-optimized tables to the new on-disk format (and the database will be offline while these steps are happening. La quantità di tempo dipende dalle dimensioni delle tabelle con ottimizzazione per la memoria e dalla velocità del sottosistema di I/O.The amount of time is dependent upon the size of the memory-optimized tables and the speed of the I/O subsystem. L'aggiornamento richiede tre dimensioni di operazioni di dati per gli aggiornamenti sul posto e con nuova installazione (il passaggio 1 non è obbligatorio per gli aggiornamenti in sequenza, ma i passaggi 2 e 3 sono obbligatori):The upgrade requires three size of data operations for in-place and new installation upgrades (step 1 is not required for rolling upgrades, but steps 2 and 3 are required) :

    1. Eseguire il ripristino del database usano il formato su disco precedente (che include il caricamento di tutti i dati nelle tabelle con ottimizzazione per la memoria all'interno della memoria del disco).Run database recovery using the old on-disk format (this includes loading all data in memory-optimized tables into memory from disk)

    2. Serializzare i dati su disco nel nuovo formato su discoSerialize the data to disk in the new on-disk format

    3. Eseguire il ripristino del database usano il nuovo formato su disco (che include il caricamento di tutti i dati nelle tabelle con ottimizzazione per la memoria all'interno della memoria del disco).Run database recovery using the new format (this includes loading all data in memory-optimized tables into memory from disk)

      In aggiunta, l'insufficienza di spazio sul disco durante questo processo blocca l'esecuzione del ripristino.Additionally, insufficient space on disk during this process will cause recovery to fail. Verificare che sia disponibile spazio sufficiente su disco per archiviare i database esistenti e spazio di archiviazione aggiuntivo pari alla dimensione corrente dei contenitori nel filegroup MEMORY_OPTIMIZED_DATA all'interno del database per eseguire un aggiornamento sul posto o quando si associa un databae SQL Server 2014 a un'istanza di SQL Server 2016. Usare la query seguente per determinare lo spazio su disco necessario per il filegroup MEMORY_OPTIMIZED_DATA e quindi la quantità di spazio libero su disco necessario per completare correttamente l'aggiornamento:Ensure there is sufficient space on disk to store the existing database plus additional storage equal to the current size of the containers in the MEMORY_OPTIMIZED_DATA filegroup in the database to perform an in-place upgrade or when attaching a SQL Server 2014 database to a SQL Server 2016 instance.Use the following query to determine the disk space currently required for the MEMORY_OPTIMIZED_DATA filegroup, and consequently also the amount of free disk space required for upgrade to succeed:

    select cast(sum(size) as float)*8/1024/1024 'size in GB'   
    from sys.database_files  
    where data_space_id in (select data_space_id from sys.filegroups where type=N'FX')  
    

Sviluppare e testare il piano di aggiornamentoDevelop and test the upgrade plan

L'approccio migliore consiste nel considerare l'aggiornamento come qualsiasi progetto IT.The best approach is to treat your upgrade like you would any IT project. È necessario organizzare un team dedicato all'aggiornamento che disponga di amministrazione del database, rete, estrazione, trasformazione e caricamento (ETL) e altre competenze necessarie per l'aggiornamento.You should organize an upgrade team that has the database administration, network, extraction, transformation, and loading (ETL), and other skills required for the upgrade. Il team deve:The team needs to:

  • Scegliere il metodo di aggiornamento: vedere Scegliere un metodo di aggiornamento del motore di database.Choose the upgrade method: See Choose a Database Engine Upgrade Method.

  • Sviluppare un piano di ripristino dello stato precedente:.Develop a rollback plan:. L'esecuzione di questo piano consentirà di ripristinare l'ambiente originale se è necessario eseguire il rollback.Executing this plan will enable you to restore your original environment if you need to rollback.

  • Determinare i criteri di accettazione: è necessario conoscere l'esito dell'aggiornamento prima di trasferire gli utenti nell'ambiente aggiornato.Determine acceptance criteria: You need to know the upgrade is successful before you cut over users to the upgraded environment.

  • Testare il piano di aggiornamento: per testare le prestazioni con il carico di lavoro effettivo, usare l'utilità Riesecuzione distribuita di Microsoft SQL Server.Test the upgrade plan: To test performance using your actual workload, use the Microsoft SQL Server Distributed Replay Utility. L'utilità può usare più computer per rieseguire dati di traccia, simulando un carico di lavoro di importanza critica.This utility can use multiple computers to replay trace data, simulating a mission-critical workload. Eseguendo una riesecuzione in un server di prova prima e dopo un aggiornamento di SQL Server, è possibile rilevare le differenze di prestazioni e individuare eventuali incompatibilità dell'applicazione con l'aggiornamento.By performing a replay on a test server before and after a SQL Server upgrade, you can measure performance differences and look for any incompatibilities your application may have with the upgrade. Per altre informazioni, vedere SQL Server Distributed Replay e Opzioni della riga di comando dello strumento di amministrazione (Distributed Replay Utility).For more information, see SQL Server Distributed Replay and Administration Tool Command-line Options (Distributed Replay Utility).

Passaggi successiviNext steps

Aggiornare il motore di databaseUpgrade Database Engine