Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Yönetilen Örneği
Veri sayfalarındaki kalıntı bilgileri kaldırır.
sp_clean_db_file_free_space veritabanının yalnızca bir dosyasındaki tüm sayfaları temizler.
Transact-SQL söz dizimi kuralları
Sözdizimi
sp_clean_db_file_free_space
[ @dbname = ] N'dbname'
, [ @fileid = ] fileid
[ , [ @cleaning_delay = ] cleaning_delay ]
[ ; ]
Arguments
[ @dbname = ] N'dbname'
Temizlenecek veritabanının adı. @dbnamesysname'dir, varsayılan yoktur.
[ @fileid = ] file id
Temizlemek için veri dosyası kimliği. @fileidiç içeri, varsayılan yok.
[ @cleaning_delay = ] cleaning_delay
Her sayfanın temizlenmesinden önce saniyeler cinsinden bir gecikme aralığı belirtir.
@cleaning_delayint, varsayılan olarak .0 Bu gecikme, I/O sisteminin yükünü azaltmaya yardımcı olur ancak temizlik sürecinin süresini uzatır.
Dönüş kodu değerleri
0 (başarı) veya 1 (başarısızlık).
Açıklamalar
Sistem tarafından saklanan prosedür, sp_clean_db_file_free_space bir sayfadaki tüm satırları, varsa hayaletsiz kayıtlar dahil, sayfanın başına taşır ve ardından sayfadaki kalan veri alanını sıfırla başlatır. Veri dosyalarının veya altta yatan depolamanın fiziksel güvenliğinin risk altında olduğu ortamlarda, bu depolama prosedürünü kullanarak veri dosyalarında veya depolamada silinmiş hiçbir kalıntı verinin kalmasını sağlayabilirsiniz.
Çalışma sp_clean_db_file_free_space süresi, veri dosyasının boyutuna, dosyadaki kullanılan sayfa sayısına ve diskin I/O yeteneklerine bağlıdır. Çalışmak sp_clean_db_file_free_space I/O aktivitesini önemli ölçüde artırabildiği için, bu prosedürü alışılmış çalışma saatleri dışında çalıştırmanızı öneririz.
Çalışmadan sp_clean_db_file_free_spaceönce, tam bir veritabanı yedeği oluşturmanızı öneririz.
Bu işlemi veritabanındaki tüm veri dosyaları için gerçekleştirmek için sp_clean_db_free_space kullanın.
Permissions
db_owner veritabanı rolünde üyelik gerektirir.
Örnekler
Aşağıdaki örnek, veritabanının AdventureWorks2025 birincil veri dosyasından kalan tüm bilgileri temizler.
USE master;
GO
EXECUTE sp_clean_db_file_free_space
@dbname = N'AdventureWorks2022',
@fileid = 1;