Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Database SQL di Microsoft Fabric
Merilis semua entri cache yang tidak digunakan dari semua cache. Mesin Database SQL Server secara proaktif membersihkan entri cache yang tidak digunakan di latar belakang untuk membuat memori tersedia untuk entri saat ini. Namun, Anda dapat menggunakan perintah ini untuk menghapus entri yang tidak digunakan secara manual dari setiap cache atau dari cache kumpulan Resource Governor tertentu.
Sintaks
DBCC FREESYSTEMCACHE
( 'ALL' [ , pool_name ] )
[ WITH
{ [ MARK_IN_USE_FOR_REMOVAL ] , [ NO_INFOMSGS ] }
]
Argumen
( 'SEMUA' [ , pool_name ] )
SEMUA
Menentukan semua cache yang didukung.
pool_name
Menentukan cache kumpulan gubernur sumber daya. Hanya entri yang terkait dengan kumpulan ini yang dibebaskan. Untuk mencantumkan nama kumpulan yang tersedia, jalankan:
SELECT name FROM sys.dm_resource_governor_resource_pools;
Sebagian besar, tetapi tidak semua, cache dapat dibebaskan secara individual menggunakan perintah ini.
MARK_IN_USE_FOR_REMOVAL
Secara asinkron membebaskan entri yang saat ini digunakan dari cache masing-masing setelah tidak digunakan.
DBCC FREESYSTEMCACHE WITH MARK_IN_USE_FOR_REMOVAL Setelah dijalankan, entri baru yang dibuat di cache tidak terpengaruh.
NO_INFOMSGS
Menekan semua pesan informasi.
Keterangan
Menjalankan DBCC FREESYSTEMCACHE menghapus cache paket untuk instans SQL Server. Menghapus cache rencana menyebabkan kompilasi ulang semua rencana eksekusi yang akan datang dan dapat menyebabkan pengurangan performa kueri secara tiba-tiba dan sementara. Untuk setiap penyimpanan cache yang dibersihkan dalam cache paket, log kesalahan SQL Server berisi pesan informasi berikut:
SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to 'DBCC FREEPROCCACHE' or 'DBCC FREESYSTEMCACHE' operations.
Pesan ini dicatat setiap lima menit selama cache dihapus dalam interval waktu tersebut.
Tataan hasil
DBCC FREESYSTEMCACHE menghasilkan:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Izin
Memerlukan izin ALTER SERVER STATE pada server.
Contoh
J. Merilis entri cache yang tidak digunakan dari cache kumpulan Resource Governor
Contoh berikut mengilustrasikan cara membersihkan cache yang didedikasikan untuk kumpulan sumber daya Resource Governor tertentu.
-- Clean all the caches with entries specific to the
-- resource pool named "default".
DBCC FREESYSTEMCACHE ('ALL', [default]);
B. Rilis entri dari cache masing-masing setelah menjadi tidak digunakan
Contoh berikut menggunakan klausa MARK_IN_USE_FOR_REMOVAL untuk merilis entri dari semua cache saat ini setelah entri menjadi tidak digunakan.
DBCC FREESYSTEMCACHE ('ALL') WITH MARK_IN_USE_FOR_REMOVAL;