DBCC DROPCLEANBUFFERS (Transact-SQL)
Si applica a: SQL Server Azure SQL DatabaseIstanza gestita di SQL di Azure Azure SynapseAnalytics AnalyticsPlatform System (PDW)
Rimuove tutti i buffer vuoti dal pool di buffer e gli oggetti columnstore dal pool di oggetti columnstore.
Convenzioni di sintassi Transact-SQL
Sintassi
Sintassi per SQL Server, database Azure SQL e pool SQL serverless in Azure Synapse Analytics:
DBCC DROPCLEANBUFFERS [ WITH NO_INFOMSGS ]
Sintassi per Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW):
DBCC DROPCLEANBUFFERS ( COMPUTE | ALL ) [ WITH NO_INFOMSGS ]
Nota
Per visualizzare la sintassi Transact-SQL per SQL Server 2014 e versioni precedenti, vedere Documentazione delle versioni precedenti.
Argomenti
WITH NO_INFOMSGS
Disattiva tutti i messaggi informativi. I messaggi informativi vengono sempre eliminati in Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW).
COMPUTE
Cancellare la cache dei dati in memoria da ogni nodo di calcolo.
ALL
Cancellare la cache dei dati in memoria da ogni nodo di calcolo e dal nodo di controllo. Questa è l'impostazione predefinita se non si specifica un valore.
Osservazioni
Usare DBCC DROPCLEANBUFFERS
per testare le query con una cache del buffer a freddo senza arrestare e riavviare il server.
Per eliminare i buffer vuoti dal pool dei buffer e gli oggetti columnstore dal pool di oggetti columnstore, usare innanzitutto CHECKPOINT per creare una cache dei buffer a freddo. CHECKPOINT forza la scrittura di tutte le pagine dirty del database corrente su disco ed esegue la pulizia dei buffer. Dopo aver eseguito il checkpoint del database, è possibile eseguire DBCC DROPCLEANBUFFERS
il comando per rimuovere tutti i buffer dal pool di buffer.
In Azure SQL Database agisce DBCC DROPCLEANBUFFERS
nell'istanza del motore di database che ospita il database corrente o il pool elastico. L'esecuzione DBCC DROPCLEANBUFFERS
in un database utente elimina i buffer puliti per tale database. Se il database si trova in un pool elastico, elimina anche i buffer puliti in tutti gli altri database di tale pool elastico. L'esecuzione del master
comando nel database non ha alcun effetto sugli altri database nello stesso server logico. L'esecuzione di questo comando in un database usando l'obiettivo del servizio Basic, S0 o S1 può eliminare buffer puliti in altri database usando questi obiettivi di servizio nello stesso server logico.
Set di risultati
DBCC DROPCLEANBUFFERS
in SQL Server restituisce:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Autorizzazioni
Si applica a: SQL Server, Piattaforma di strumenti analitici (PDW)
- Richiede l'autorizzazione sysadmin nel server
Si applica a: SQL Server 2022 e versioni successive
- Richiede l'autorizzazione ALTER SERVER STATE nel server
Si applica a: Database SQL di Azure
- Richiede l'appartenenza al ruolo del server ##MS_ServerStateManager##
Si applica a: Azure Synapse Analytics
- Richiede l'appartenenza al ruolo predefinito del server db_owner