Note sulla versione di SQL Server 2016

Si applica a: SQL Server 2016 (13.x) e versioni successive

Questo articolo descrive le limitazioni e i problemi relativi alle versioni di SQL Server 2016 (13.x), inclusi i Service Pack. Per informazioni sulle novità, vedere Novità di SQL Server 2016.

Eseguire il download di SQL Server da Evaluation Center
Accedere a una macchina virtuale con SQL Server già installato
Scaricare SQL Server Management Studio (SSMS)

SQL Server 2016 Service Pack 3 (SP3)

SQL Server 2016 (13.x) SP3 include tutti gli aggiornamenti cumulativi rilasciati dopo SQL Server 2016 (13.x) SP2, fino a CU17 compreso.

Scaricare SQL Server 2016 Service Pack 3 (SP3)

Per un elenco completo degli aggiornamenti, vedere KB5003279 - Informazioni sulla versione di SQL Server 2016 Service Pack 3.

L'installazione di SQL Server 2016 (13.x) SP3 potrebbe richiedere il riavvio dopo l'installazione. Come procedura consigliata, è consigliabile eseguire un riavvio dopo l'installazione di SQL Server 2016 (13.x) SP3.

Miglioramenti relativi a prestazioni e scalabilità inclusi in SQL Server 2016 (13.x) SP3.

Funzionalità Descrizione Altre informazioni
Listener del gruppo di disponibilità senza il bilanciamento del carico Consente di creare un nuovo tipo di listener di gruppo di disponibilità denominato "listener DNN (Nome di Rete Distribuito)" senza il servizio di bilanciamento del carico.

Nota: La rimozione del servizio di bilanciamento del carico riduce notevolmente la complessità della configurazione e riduce anche notevolmente la latenza di failover del gruppo di disponibilità (da 6 a 7 volte per alcuni carichi di lavoro).
KB4578579
Abilitare la funzionalità DNN nell'istanza del cluster di failover di SQL Server 2016 e 2019 I listener dell'istanza del cluster di failover (FCI) sono migliorati per funzionare con il punto di accesso Distributed Network Name (DNN) del Windows Server Failover Cluster (WSFC). KB4537868

Miglioramenti relativi a supporto e diagnostica in SQL Server 2016 (13.x) SP3.

Funzionalità Descrizione Altre informazioni
Migliorare il supporto e l'usabilità di CDC con i database in memoria La funzionalità Change Data Capture (CDC) non può essere abilitata in un database abilitato per l'accesso OLTP (Online Transaction Processing) In-Memory. Questo miglioramento sblocca l'abilitazione di CDC in un database con OLTP e oggetti in memoria. Inoltre, il cdc_session XEvent viene aggiornato per stampare le informazioni sulla fase di scansione. KB4500511
Le dimensioni e i criteri di conservazione vengono aumentati nella traccia XEvent predefinita system_health La definizione corrente per la sessione XEvent system_health ha una dimensione massima di file di 5 megabyte (MB) e un numero massimo di file pari a 4, per un massimo di 20 MB di dati XEvent system_health. Nei sistemi che hanno molta attività, è possibile superare rapidamente questo limite e perdere informazioni importanti in caso di un problema che influisce sul sistema. Per mantenere disponibili altri dati di risoluzione dei problemi nel sistema, le dimensioni predefinite del file sono state modificate da 5 MB a 100 MB e il numero predefinito di file è stato modificato da 4 a 10, per un massimo di 1 GB di dati XEvent system_health, in questo aggiornamento. Se la definizione della sessione di system_health è già stata modificata dai valori predefiniti, questo miglioramento non sovrascrive le impostazioni esistenti. KB4541132
Nuovi XEvent temp_table_cache_trace e temp_table_destroy_list_trace Vengono creati due nuovi XEvent temp_table_cache_trace e temp_table_destroy_list_trace per tenere traccia delle metriche e delle operazioni della cache delle tabelle temporanee.

Nota: Questi eventi XEvent tengono traccia di un oggetto cache di metadati specifico denominato cache di oggetti temporanei, che contiene informazioni sulle tabelle temporanee, gli oggetti, i parametri vengono memorizzati nella cache, rimossi e riutilizzati. È possibile eseguire l'XEvent per tracciare il comportamento della cache quando si riscontra contesa nella cache tempdb. La maggior parte dei clienti non usa questo e consente ai tecnici CSS di eseguire il debug dei problemi nel proprio ambiente.
KB5003937
Nuova registrazione e nuovi XEvent per risolvere i problemi di analisi del pool di buffer a esecuzione prolungata Alcune operazioni in SQL Server attivano un'analisi del pool di buffer, ovvero la cache che archivia le pagine del database in memoria. Nei sistemi con una grande quantità di memoria, 1 TB o più, l'analisi del pool di buffer richiede molto tempo e questo rallenta l'operazione che ha attivato l'analisi. Questi nuovi XEvent consentono di risolvere i problemi di analisi del pool di buffer a esecuzione prolungata. Le operazioni che analizzano il pool di buffer di SQL Server sono lente nei computer con una memoria di grandi dimensioni
Nuovo formato di registrazione per il writer SQL Fornisce dati aggiuntivi per la risoluzione dei problemi in un formato facilmente leggibile/analizzabile, oltre a un maggiore controllo del livello di verbosità dei log e alla possibilità di abilitare/disabilitare. Registrazione di SQL Server VSS Writer
Aggiunge l'XEvent sql_statement_post_compile Questo evento esteso viene attivato ogni volta che viene completata la compilazione delle query. Genera informazioni relative al fatto che, ad esempio, la compilazione della query era una compilazione iniziale o una ricompilazione, al tempo necessario per compilare la query e alla quantità di capacità della CPU usata. KB4480630
Le statistiche danneggiate possono essere rilevate tramite extended_logical_checks Quando le statistiche sono danneggiate, è possibile che venga generato un messaggio generico senza informazioni sul danneggiamento delle statistiche. Inoltre, CHECKDB potrebbe non segnalare statistiche danneggiate. Questo miglioramento può rilevare statistiche danneggiate usando extended_logical_checks come parte di DBCC CHECKDB. KB4530907
Accuratezza migliorata dell'XEvent query_plan_profile Il tempo e la durata della CPU segnalati dall'XEvent query_plan_profile sono più accurati. Infrastruttura di profilatura delle statistiche di esecuzione query lightweight v2

Problemi noti

Questa sezione identifica i problemi che possono verificarsi dopo l'applicazione di SQL Server 2016 (13.x) SP3.

R Services che usano algoritmi, streaming o partizionamento specifici

  • problema: le limitazioni seguenti si applicano a SQL Server 2016 (13.x) con l'aggiornamento di runtime configurato usando Modificare la versione predefinita del runtime del linguaggio R o Python o con l'installazione di sp3 slipstream. Questo problema si applica alla edizione Enterprise.

    • Parallelismo: RevoScaleR e il parallelismo del thread dell'algoritmo MicrosoftML per gli scenari sono limitati a un massimo di 2 thread.

    • Partizionamento & di streaming: gli scenari in cui il parametro @r_rowsPerRead fornito al T-SQL sp_execute_external_script non viene applicato.

    • Partizionamento dello streaming &: le origini dati RevoScaleR e MicrosoftML (ovvero ODBC, XDF) non supportano la lettura di righe in blocchi per scenari di addestramento o valutazione. Questi scenari portano sempre tutti i dati alla memoria per il calcolo e le operazioni sono associate alla memoria

  • Soluzione: la soluzione migliore consiste nell'eseguire l'aggiornamento a SQL Server 2019 (15.x). In alternativa, è possibile continuare a usare SQL Server 2016 (13.x) SP3, dopo aver completato le attività seguenti.

    1. Modificare il Registro di sistema per creare una chiave Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\150 e aggiungere un valore SharedCode con dati C:\Program Files\Microsoft SQL Server\150\Shared o la directory condivisa come configurato per l'istanza.

    2. Creare una cartella C:\Program Files\Microsoft SQL Server\150\Shared and copy instapi130.dll dalla cartella C:\Program Files\Microsoft SQL Server\130\Shared alla cartella appena creata.

    3. Rinominare l'oggetto instapi130.dll in instapi150.dll nella nuova cartella C:\Program Files\Microsoft SQL Server\150\Shared.

Importante

Se si eseguono i passaggi precedenti, è necessario rimuovere manualmente la chiave aggiunta prima di eseguire l'aggiornamento a una versione successiva di SQL Server.

Per altre informazioni, vedere Modificare la versione del runtime R in SQL Server 2016.

Errori di pulizia Rilevamento modifiche

  • Problema: il messaggio di errore seguente si verifica dopo l'esecuzione di una stored procedure di pulizia di Rilevamento modifiche sp_flush_commit_table_on_demand o sp_flush_CT_internal_table_on_demand:

    Msg 8114, Level 16, State 1, Procedure sp_add_ct_history, Line <LineNumber>
    Error converting data type numeric to int.
    

Per altre informazioni, vedere KB5007039.

Errore dello script R

  • Problema: dopo aver installato SP3, l'esecuzione dello script R ha esito negativo. Lo script R ha esito negativo con un errore simile al seguente:

    Error: executable command line exceeds the 2047 characters limit.
    
  • Soluzione: disinstallare Microsoft MPI v7. Installare Microsoft MPI v10. Per altre informazioni, vedere Microsoft MPI.

Rimuovere il problema di SP3

  • Problema: se si rimuove SP3, vengono eliminati 20 account utente in SQLRUserGroup usato dal Launchpad. Qualsiasi esecuzione di sp_execute_external_script genera questo errore:

    Unable to launch the runtime. ErrorCode 0x80070718: 1816(Not enough quota is available to process this command.).
    
  • Soluzione: eseguire il ripristino. Ad esempio:

    setup.exe /q /ACTION=Repair /INSTANCENAME=<instancename>
    

    Per altre informazioni, vedere Riparare un'installazione di SQL Server non riuscita.

Installare SP3 con SysPrep

  • Problema: quando si usa SysPrep per installare SP3 con funzionalità di estendibilità, SysPrep non installa correttamente la versione SP3 del framework di estendibilità. Alcuni file binari mancano o non sono corretti. Ad esempio, manca il runtime R 3.5.2.

  • Soluzione: eseguire il ripristino dopo aver completato l'immagine. Ad esempio:

    setup.exe /q /ACTION=Repair /INSTANCENAME=<instancename>
    

    Per altre informazioni, vedere Riparare un'installazione di SQL Server non riuscita.

SQL Server 2016 Service Pack 2 (SP2)

SQL Server 2016 (13.x) SP2 include tutti gli aggiornamenti cumulativi rilasciati dopo SQL Server 2016 (13.x) SP1, fino a CU8 compreso.

L'installazione di SQL Server 2016 (13.x) SP2 potrebbe richiedere il riavvio dopo l'installazione. Come procedura consigliata, è consigliabile eseguire un riavvio dopo l'installazione di SQL Server 2016 (13.x) SP2.

Miglioramenti relativi a prestazioni e scalabilità inclusi in SQL Server 2016 (13.x) SP2.

Funzionalità Descrizione Altre informazioni
Procedura di pulizia del database di distribuzione migliorata Una tabella di database di distribuzione sovradimensionata causa una situazione di blocco e deadlock. Grazie a una procedura di pulizia migliorata è possibile eliminare scenari di blocco e di deadlock di questo genere. KB4040276
Pulizia del rilevamento delle modifiche Miglioramento delle prestazioni di pulizia di Rilevamento modifiche ed efficienza delle tabelle lato Rilevamento modifiche. KB4052129
Usare il timeout della CPU per annullare la richiesta di Resource Governor Migliora la gestione delle richieste di query annullando effettivamente la richiesta, se vengono raggiunte le soglie della CPU per una richiesta. Questo comportamento viene abilitato con il flag di traccia 2422. KB4038419
SELECT INTO per creare la tabella di destinazione in filegroup A partire da SQL Server 2016 (13.x) SP2, la sintassi T-SQL SELECT INTO supporta il caricamento di una tabella in un filegroup diverso da quello predefinito dell'utente usando la parola chiave ON <nome del filegroup> nella sintassi T-SQL.
Checkpoint indiretto migliorato per tempdb Il checkpoint indiretto per tempdb è stato migliorato per ridurre al minimo la contesa di spinlock in DPLists. Questo miglioramento consente al carico di lavoro tempdb su SQL Server 2016 (13.x) di espandere immediatamente se il checkpoint indiretto è ATTIVATO per tempdb. KB4040276
Prestazioni di backup del database migliorate nei computer di memoria di grandi dimensioni SQL Server 2016 (13.x) SP2 ottimizza la modalità di svuotamento delle operazioni di I/O in corso durante il backup, con conseguente notevole miglioramento delle prestazioni di backup per database di piccole e medie dimensioni. Si è visto un miglioramento superiore a 100 volte durante l'esecuzione di backup del database di sistema in un computer da 2 TB. Il miglioramento delle prestazioni si riduce con l'aumentare delle dimensioni del database e delle pagine di cui eseguire il backup e l'I/O di backup richiede più tempo rispetto allo scorrimento del pool di buffer. Questa modifica consente di migliorare le prestazioni di backup per i clienti che ospitano più database di piccole dimensioni in un server di grandi dimensioni con memoria elevata.
Supporto della compressione dei backup VDI per i database abilitati per TDE SQL Server 2016 (13.x) SP2 aggiunge il supporto VDI per consentire alle soluzioni di backup VDI di usare la compressione per i database abilitati per TDE. Con questo miglioramento, è stato introdotto un nuovo formato di backup per supportare la compressione dei backup per i database abilitati per TDE. Il motore di database di SQL Server gestisce in modo trasparente i formati di backup nuovi e vecchi per ripristinare i backup.
Caricamento dinamico dei parametri dei profili agenti di replica Questo nuovo miglioramento consente il caricamento dinamico dei parametri degli agenti di replica senza dover riavviare l'agente. Questa modifica è applicabile solo ai parametri dei profili agenti di uso più frequente.
Opzione MAXDOP di supporto per creazione/aggiornamento di statistiche Questo miglioramento consente di specificare l'opzione MAXDOP per un'istruzione create/UPDATE statistics e assicurarsi che l'impostazione MAXDOP corretta venga usata quando le statistiche vengono aggiornate come parte della creazione o della ricompilazione per tutti i tipi di indici (se l'opzione MAXDOP è presente) KB4041809
Aggiornamento delle statistiche automatico migliorato per le statistiche incrementali In alcuni scenari, quando sono state apportate diverse modifiche ai dati in più partizioni in una tabella in modo che il contatore di modifiche totale per le statistiche incrementate superi la soglia di aggiornamento automatico, ma nessuna delle singole partizioni supera la soglia di aggiornamento automatico, l'aggiornamento delle statistiche potrebbe essere ritardato fino a quando non si verificano altre modifiche nella tabella. Questo comportamento è stato corretto con il flag di traccia 11024.

Miglioramenti relativi a supporto e diagnostica in SQL Server 2016 (13.x) SP2.

Funzionalità Descrizione Altre informazioni
Supporto DTC completo per i database in un gruppo di disponibilità Le transazioni tra database per i database che fanno parte di un gruppo di disponibilità non sono attualmente supportate per SQL Server 2016 (13.x). Con SQL Server 2016 (13.x) SP2, viene introdotto il supporto completo per le transazioni distribuite con i database del gruppo di disponibilità.
Aggiorna la colonna sys.databases.is_encrypted per riflettere accuratamente lo stato di crittografia per tempdb Il valore della colonna is_encryptedcolumn in sys.databases è 1 per tempdb, anche dopo aver disattivato la crittografia per tutti i database utente e riavviare SQL Server. Il comportamento previsto sarebbe che il valore per questo è 0, poiché tempdb non è più crittografato in questa situazione. A partire da SQL Server 2016 (13.x) SP2, sys.databases.is_encrypted ora riflette in modo accurato lo stato di crittografia per tempdb.
Nuove opzioni di DBCC CLONEDATABASE per generare clone e backup verificati Con SQL Server 2016 (13.x) SP2, DBCC CLONEDATABASE consente due nuove opzioni: produrre un clone verificato o produrre un clone di backup. Quando viene creato un database clone usando l'opzione WITH VERIFY_CLONEDB, viene creato e verificato un clone di database coerente, supportato da Microsoft per l'uso in produzione. Viene introdotta una nuova proprietà per verificare se il clone viene verificato SELECT DATABASEPROPERTYEX('clone_database_name', 'IsVerifiedClone'). Quando viene creato un clone con l'opzione BACKUP_CLONEDB, viene generato un backup nella stessa cartella del file di dati per semplificare lo spostamento del clone in un server diverso o per inviarlo al supporto tecnico Microsoft per la risoluzione dei problemi.
Supporto di Service Broker (SSB) per DBCC CLONEDATABASE Comando DBCC CLONEDATABASE migliorato per permettere lo scripting di oggetti SSB.
Nuova DMV per monitorare l'utilizzo dello spazio di archiviazione delle versioni tempdb Una nuova DMV sys.dm_tran_version_store_space_usage è stata introdotta in SQL Server 2016 (13.x) SP2 per consentire il monitoraggio tempdb per l'utilizzo dell'archivio versioni. Gli amministratori di database possono ora pianificare in modo proattivo il ridimensionamento tempdb in base alla necessità di utilizzo dell'archivio delle versioni per ogni database, senza alcun impatto sulle prestazioni durante l'esecuzione nei server di produzione.
Supporto dei dump completi per gli agenti di replica Oggi se gli agenti di replica riscontrano un'eccezione non gestita, l'impostazione predefinita consiste nel creare un mini dump dei sintomi dell'eccezione. Ciò rende difficile la risoluzione dei problemi relativi alle eccezioni non gestite. Tramite questa modifica viene introdotta una nuova chiave del Registro di sistema, che consente di creare un dump completo per gli agenti di replica.
Miglioramento degli eventi estesi per l'errore di routing in lettura per un gruppo di disponibilità In precedenza, il read_only_rout_fail XEvent veniva generato se era presente un elenco di routing, ma nessuno dei server nell'elenco di routing era disponibile per le connessioni. SQL Server 2016 (13.x) SP2 include informazioni aggiuntive per facilitare la risoluzione dei problemi ed espandere anche i punti di codice in cui viene generato questo evento XEvent.
Nuova DMV per monitorare il log delle transazioni È stata aggiunta una nuova DMV sys.dm_db_log_stats che restituisce attributi a livello di riepilogo e informazioni sui file di log delle transazioni dei database.
Nuova DMV per monitorare le informazioni VLF Una nuova dmv sys.dm_db_log_info è stata introdotta in SQL Server 2016 (13.x) SP2 per esporre le informazioni VLF simili a DBCC LOGINFO per monitorare, inviare avvisi e evitare potenziali problemi di T-Log riscontrati dai clienti.
Informazioni sul processore in sys.dm_os_sys_info Nuove colonne aggiunte alla DMV sys.dm_os_sys_info per esporre le informazioni correlate al processore, ad esempio socket_counte cores_per_numa.
Estensione delle informazioni modificate in sys.dm_db_file_space_usage Nuova colonna aggiunta a sys.dm_db_file_space_usage per tenere traccia del numero di extent modificati dall'ultimo backup completo.
Informazioni sui segmenti in sys.dm_exec_query_stats Sono state aggiunte nuove colonne a sys.dm_exec_query_stats per tenere traccia del numero di segmenti columnstore ignorati e letti, ad esempio total_columnstore_segment_readse total_columnstore_segment_skips. KB4051358
Impostazione del livello di compatibilità corretto per i database di distribuzione Dopo l'installazione del Service Pack, il livello di compatibilità del database di distribuzione passa a 90. Ciò è dovuto a un percorso di codice in sp_vupgrade_replication stored procedure. Il Service Pack è stato modificato e ora imposta il livello di compatibilità corretto per il database di distribuzione.
Mostrare l'ultima configurazione valida conosciuta di DBCC CHECKDB È stata aggiunta una nuova opzione di database per restituire a livello di codice la data dell'ultima esecuzione di DBCC CHECKDB riuscita. Gli utenti possono ora eseguire query DATABASEPROPERTYEX([database], 'lastgoodcheckdbtime') per ottenere un singolo valore che rappresenta la data/ora dell'ultima esecuzione di DBCC CHECKDB riuscita nel database specificato.
Miglioramenti del file XML dello showplan Informazioni sulle statistiche usate per compilare il piano di query, inclusi nome delle statistiche, contatore delle modifiche, percentuale di campionamento e ora dell'ultimo aggiornamento delle statistiche. Si noti che questa funzionalità è stata aggiunta solo per i modelli CE 120 e versioni successive. Ad esempio, non è supportato per CE 70.
Un nuovo attributo EstimateRowsWithoutRowgoal viene aggiunto al file XML dello showplan se Query Optimizer usa la logica "obiettivo di riga".
Nuovi attributi di runtime UdfCpuTime e UdfElapsedTime nel file XML dello showplan effettivo, per tenere traccia del tempo impiegato per le funzioni definite dall'utente scalari.
Aggiungere il tipo di attesa CXPACKET a elenco delle prime 10 attese possibili in showplan XML effettivo: l'esecuzione di query parallele comporta spesso attese CXPACKET, ma questo tipo di attesa non segnalava il codice XML showplan effettivo.
Esteso l'avviso di spill durante il runtime per segnalare il numero di pagine scritte in tempdb durante un'operazione di overflow dell'operatore di parallelismo.
Supporto della replica per i database con regole di confronto per i caratteri supplementari La replica può ora essere supportata nei database che usano la regola di confronto per i caratteri supplementari.
Gestione corretta di Service Broker in caso di failover del gruppo di disponibilità Nell'implementazione corrente, quando Service Broker è abilitato su un database di un gruppo di disponibilità, durante un failover del gruppo di disponibilità, tutte le connessioni di Service Broker originate nella replica primaria rimangono aperte. Questo miglioramento ha lo scopo di chiudere tutte le connessioni aperte durante un failover del gruppo di disponibilità.
Miglioramento nella risoluzione dei problemi per le attese di parallelismo Aggiunta di una nuova attesa CXCONSUMER.
Miglioramento della coerenza tra DMV per le stesse informazioni La DMV sys.dm_exec_session_wait_stats monitora costantemente le attese di CXPACKET e CXCONSUMER in modo coerente con la DMV sys.dm_os_wait_stats.
Miglioramento della risoluzione dei problemi relativi ai deadlock con parallelismo interno alla query Nuovo evento esteso exchange_spill per segnalare il numero di pagine scritte in tempdb durante un overflow dell'operatore di parallelismo, nel nome del campo XEvent worktable_physical_writes.
Le colonne spills nelle DMV sys.dm_exec_query_stats, sys.dm_exec_procedure_statse sys.dm_exec_trigger_stats (ad esempio total_spills) ora includono anche i dati versati dagli operatori di parallelismo.
Miglioramento della classe Deadlock Graph XML per gli scenari di deadlock con parallelismo, con altri attributi aggiunti alla risorsa exchangeEvent.
Miglioramento della classe Deadlock Graph XML per i deadlock che coinvolgono operatori in modalità batch, con altri attributi aggiunti alla risorsa SyncPoint.
Ricaricamento dinamico di alcuni parametri dei profili agenti di replica Nell'implementazione corrente degli agenti di replica, per apportare modifiche al parametro del profilo dell'agente, è necessario arrestare e riavviare l'agente. Questo miglioramento consente di ricaricare dinamicamente i parametri senza dover riavviare l'agente di replica.

SQL Server 2016 Service Pack 1 (SP1)

SQL Server 2016 (13.x) SP1 include tutti gli aggiornamenti cumulativi fino a SQL Server 2016 (13.x) RTM CU3, incluso l'aggiornamento della sicurezza MS16-136. Contiene un rollup delle soluzioni fornite negli aggiornamenti cumulativi di SQL Server 2016 (13.x) fino a e include l'aggiornamento cumulativo più recente - CU3 e aggiornamento della sicurezza MS16-136 rilasciato l'8 novembre 2016.

Le funzionalità seguenti sono disponibili nelle edizioni Standard, Web, Express e database locale di SQL Server 2016 (13.x) SP1 (ad eccezione dei casi indicati):

  • Always Encrypted
  • Changed Data Capture (non disponibile in Express)
  • Columnstore
  • Compressione
  • Maschera dati dinamica
  • Controllo con granularità fine
  • OLTP in memoria (non disponibile nel database locale)
  • Più contenitori FileStream (non disponibili nel database locale)
  • Partizionamento
  • PolyBase
  • Protezione a livello di riga

La tabella seguente contiene un riepilogo dei principali miglioramenti disponibili in SQL Server 2016 (13.x) SP1.

Funzionalità Descrizione Altre informazioni
Inserimento in blocco negli heap con TABLOCK automatico in TF 715 Il flag di traccia 715 abilita il blocco di tabella per le operazioni di caricamento bulk in heap senza indici non cluster. La migrazione dei carichi di lavoro SAP a SQL Server è 2,5 volte più veloce
CREATE OR ALTER Consentono la distribuzione di oggetti, ad esempio stored procedure, trigger, funzioni definite dall'utente e visualizzazioni. Blog sul motore di database di SQL Server
Supporto DROP TABLE per la replica Supporto DDL DROP TABLE per la replica per consentire l'eliminazione degli articoli relativi alla replica. KB 3170123
Firma del driver RsFx FileStream Il driver RsFx FileStream viene firmato e certificato usando il dashboard del centro per sviluppatori di hardware Windows (portale per sviluppatori) che consente di installare il driver RsFx FileStream di SQL Server 2016 (13.x) SP1 in Windows Server 2016 o Windows 10 senza alcun problema. La migrazione dei carichi di lavoro SAP a SQL Server è 2,5 volte più veloce
Privilegi LPIM per l'account del servizio SQL, identificazione a livello di codice Consentono agli amministratori di database di verificare a livello di programmazione se il privilegio Blocco di pagine in memoria (LPIM) è attivo al momento dell'avvio di servizio. Scelta degli sviluppatori: identificare a livello di codice i privilegi LPIM e IFI in SQL Server
Pulizia manuale del rilevamento delle modifiche Una nuova stored procedure elimina su richiesta la tabella interna del rilevamento delle modifiche. KB 3173157
Modifiche INSERT..SELECT parallele per le tabelle temporanee locali Nuovo operatore INSERT parallelo nelle operazioni INSERT..SELECT. Team di consulenza clienti di SQL Server
Showplan XML Diagnostica ampliata che include avvisi di concessione e memoria massima abilitata per una query, flag di traccia abilitati e altre informazioni di diagnostica. KB 3190761
Storage Class Memory Ottimizzare l'elaborazione delle transazioni usando Storage Class Memory in Windows Server 2016, che consente di accelerare i tempi di commit delle transazioni per ordini di grandezza. Blog sul motore di database di SQL Server
USE HINT Usare l'opzione di query OPTION(USE HINT('<option>')) per modificare il comportamento di Query Optimizer usando hint supportati per il livello di query. A differenza di QUERYTRACEON, l'opzione USE HINT non richiede privilegi sysadmin. Scelta degli sviluppatori: hint USE HINT per la query
Aggiunte di XEvent Nuove funzionalità di diagnostica di XEvent e Perfmon migliorano la risoluzione dei problemi di latenza. Eventi estesi

Inoltre, tenere presenti le correzioni seguenti:

  • In base ai suggerimenti degli amministratori di database e della community di SQL, a partire da SQL 2016 SP1 i messaggi di registrazione Hekaton sono ridotti al minimo.
  • Esaminare i nuovi flag di traccia.
  • Le versioni complete dei database di esempio WideWorldImporters ora funzionano con le edizioni Standard ed Express, a partire da SQL Server 2016 (13.x) SP1, e sono disponibili in GitHub. Non sono necessarie modifiche nell'esempio. I backup del database creati in RTM per l'edizione Enterprise funzionano con le edizioni Standard ed Express in SP1.

L'installazione di SQL Server 2016 (13.x) SP1 potrebbe richiedere il riavvio dopo l'installazione. Come procedura consigliata, è necessario eseguire un riavvio dopo l'installazione di SQL Server 2016 (13.x) SP1.

Scaricare le pagine e altre informazioni

SQL Server 2016 General Availability (GA)

installare il requisito patch (GA)

Problema e impatto del cliente: Microsoft ha identificato un problema che interessa i file binari di Runtime di Microsoft VC++ 2013 installati come prerequisiti da SQL Server 2016. È disponibile un aggiornamento per risolvere questo problema. Se questo aggiornamento ai file binari di runtime di VC non è installato, SQL Server 2016 potrebbe riscontrare problemi di stabilità in determinati scenari. Prima di installare SQL Server 2016, verificare se il computer richiede la patch descritta in KB 3164398. La patch è inclusa anche nell'aggiornamento cumulativo 1 (CU1) per SQL Server 2016 RTM.

Risoluzione: usare una delle soluzioni seguenti:

  • Installare l'aggiornamento per Visual C++ 2013 e Visual C++ Redistributable Package ( KB 3138367). La soluzione nella KB è la soluzione consigliata. È possibile installarlo prima o dopo l'installazione di SQL Server 2016 (13.x).

    Se SQL Server 2016 (13.x) è già installato, eseguire i passaggi seguenti nell'ordine indicato:

    1. Scaricare il vcredist_<version>.exeappropriato.
    2. Arrestare il servizio SQL Server per tutte le istanze del motore di database.
    3. Installare KB 3138367.
    4. Riavviare il computer.
  • Installare KB 3164398 - Aggiornamento critico per i prerequisiti di SQL Server 2016 MSVCRT.

    Se si usa KB 3164398, è possibile installare durante l'installazione di SQL Server, tramite Microsoft Update o dall'Area download Microsoft.

    • Durante l'installazione di SQL Server 2016 (13.x): se il computer che esegue la configurazione di SQL Server ha accesso a Internet, l'aggiornamento viene cercato durante il processo di installazione di SQL Server dalla configurazione di SQL Server. Se si accetta l'aggiornamento, il programma di installazione scarica e aggiorna i file binari durante l'installazione.

    • Microsoft Update: l'aggiornamento è disponibile in Microsoft Update come aggiornamento critico per SQL Server 2016 (13.x) non correlato alla sicurezza. L'installazione tramite Microsoft Update dopo SQL Server 2016 (13.x) richiede il riavvio del server dopo l'aggiornamento.

    • Area download: infine, l'aggiornamento è disponibile nell'Area download Microsoft. È possibile scaricare il software per l'aggiornamento e installarlo nei server in cui è presente SQL Server 2016 (13.x).

Stretch Database

Problema con un carattere specifico in un nome di database o tabella

Problema e impatto per i clienti: se si tenta di abilitare Stretch Database in un database o in una tabella, si ottiene un errore. Il problema si verifica se il nome dell'oggetto include un carattere che viene considerato come un carattere diverso quando viene convertito da minuscolo a maiuscolo. Un esempio di carattere che causa questo problema è il carattere "ƒ" (creato digitando ALT+159).

Soluzione alternativa: se si vuole abilitare Stretch Database nel database o nella tabella, l'unica possibilità è rinominare l'oggetto e rimuovere il carattere che causa il problema.

Problema relativo a un indice che usa la parola chiave INCLUDE

Problema e impatto del cliente: Tentativo di abilitare Stretch Database in una tabella con un indice che usa la parola chiave INCLUDE per includere colonne aggiuntive nell'indice ha esito negativo e viene generato un errore.

Soluzione alternativa: eliminare l'indice che include la parola chiave INCLUDE, abilitare Stretch Database nella tabella, quindi ricreare l'indice. In questo caso, assicurarsi di seguire i criteri e le procedure di manutenzione dell'organizzazione per eliminare o ridurre al minimo l'impatto per gli utenti della tabella interessata.

Archivio query

Problema relativo alla pulizia automatica dei dati nelle edizioni diverse da Enterprise e Developer

Problema e impatto del cliente:

La pulizia automatica dei dati non riesce nelle edizioni diverse da Enterprise e Developer. Pertanto, se i dati non vengono eliminati manualmente, lo spazio usato da Query Store aumenta nel tempo fino a quando non viene raggiunto il limite configurato. Se non è stato risolto, questo problema riempie anche lo spazio su disco allocato per i log degli errori, perché ogni tentativo di esecuzione della pulizia produce un file di dump. Il periodo di attivazione della pulizia dipende dalla frequenza del carico di lavoro, ma non è più di 15 minuti.

Soluzione alternativa: se si prevede di usare l'archivio query in edizioni diverse da Enterprise e Developer, è necessario disattivare i criteri di pulizia in modo esplicito. Questa operazione si può eseguire da SQL Server Management Studio (pagina delle proprietà del database) oppure tramite script Transact-SQL:

Inoltre, prendere in considerazione le opzioni per la pulizia manuale per evitare che l'archivio query passi alla modalità di sola lettura. Ad esempio, eseguire periodicamente la query seguente per pulire l'intero spazio dati:

ALTER DATABASE <database> SET QUERY_STORE CLEAR;

Inoltre, eseguire periodicamente le seguenti stored procedure di Query Store per pulire le statistiche di runtime, le query specifiche o i piani:

  • sp_query_store_reset_exec_stats
  • sp_query_store_remove_plan
  • sp_query_store_remove_query

Documentazione del prodotto (GA)

Problema e impatto del cliente: Non è ancora disponibile una versione scaricabile della documentazione di SQL Server 2016 (13.x). Quando si usa Gestione librerie della Guida per provare a installare contenuto online, viene visualizzata la documentazione di SQL Server 2012 e SQL Server 2014, ma non è disponibile alcuna opzione per la documentazione di SQL Server 2016 (13.x).

Soluzione alternativa: usare una delle soluzioni alternative seguenti:

screenshot di Gestisci impostazioni della Guida per SQL Server.

  • Usare l'opzione Scegliere di utilizzare la Guida online o locale e configurare la Guida per l'uso della Guida online.

  • Usare l'opzione Installa contenuto da online e scaricare i contenuti relativi a SQL Server 2014.

Guida sensibile al contesto: Per impostazione predefinita quando si preme F1 in SQL Server Management Studio, la versione online dell'articolo della Guida sensibile al contesto viene visualizzata nel browser, fornendo assistenza basata su browser anche quando è stata configurata e installata la Guida locale.

Aggiornamento del contenuto:

In SQL Server Management Studio e Visual Studio, l'applicazione Help Viewer potrebbe smettere di rispondere durante il processo di aggiunta della documentazione. Per risolvere questo problema, eseguire la procedura seguente. Per altre informazioni su questo problema, vedere Il visualizzatore della Guida di Visual Studio si blocca.

  • Aprire il file %LOCALAPPDATA%\Microsoft\HelpViewer2.2\HlpViewer_SSMS16_en-US.settings o HlpViewer_VisualStudio14_en-US.settings nel Blocco note e modificare la data nel codice seguente in una data futura.

    Cache LastRefreshed="12/31/2017 00:00:00"
    

Informazioni aggiuntive

Ottenere aiuto

Contribuire alla documentazione di SQL

Il contenuto SQL può essere modificato. L'autore delle modifiche contribuirà a migliorare la documentazione e verrà accreditato come collaboratore alla realizzazione della pagina.

Per maggiori informazioni, vedere Come contribuire alla documentazione di SQL Server