sp_clean_db_free_space (Transact-SQL)
- jogcímcsoport
- 01/29/2021
- 2 perc olvasni
-
- m
- c
- r
- p
- M
-
+4
vonatkozik: SQL Server (az összes támogatott verzió)
eltávolítja az adatbázis oldalain maradt maradék információkat az SQL Server adatmódosítási rutinjai miatt. sp_clean_db_free_space tisztítja az összes oldalt az összes fájlt az adatbázis.
Transact-SQL szintaxis konvenciók
szintaxis
sp_clean_db_free_space 'database_name' 'delay_in_seconds' ]
argumentumok
@dbname = ‘database_name’
a tisztítandó adatbázis neve. a dbname sysname, és nem lehet NULL.
@cleaning_delay = ‘delay_in_seconds’
megadja az oldalak tisztítása közötti késleltetési intervallumot. Ez segít csökkenteni az I/O rendszerre gyakorolt hatást. a delay_in_seconds értéke int, alapértelmezett értéke 0.
visszatérési kód értékek
0 (siker) vagy 1 (hiba)
Megjegyzések
műveletek törlése egy táblázatból vagy frissítési műveletek, amelyek egy sor áthelyezését okozzák, azonnal felszabadíthatják a helyet az oldalon a sorra mutató hivatkozások eltávolításával. Bizonyos körülmények között azonban a sor fizikailag szellemrekordként maradhat az adatoldalon. A szellemrekordokat egy háttérfolyamat rendszeresen eltávolítja. Ezt a maradék adatot az adatbázismotor nem adja vissza a lekérdezésekre adott válaszként. Olyan környezetben azonban, ahol az adatok vagy a biztonsági mentési fájlok fizikai biztonsága veszélyben van, a sp_clean_db_free_space
használatával törölheti ezeket a szellemrekordokat. A művelet adatbázis-fájlonként történő végrehajtásához használja az sp_clean_db_file_free_space (Transact-SQL) parancsot.
az sp_clean_db_free_space futtatásához szükséges idő a fájl méretétől, a rendelkezésre álló szabad helytől és a lemez kapacitásától függ. Mivel a sp_clean_db_free_space
futtatása jelentősen befolyásolhatja az I / O tevékenységet, javasoljuk, hogy ezt az eljárást a szokásos üzemidőn kívül futtassa.
a sp_clean_db_free_space
futtatása előtt javasoljuk, hogy készítsen biztonsági másolatot az adatbázisról.
a kapcsolódó sp_clean_db_file_free_space tárolt eljárás egyetlen fájlt képes megtisztítani.
engedélyek
tagságot igényel a db_owner
adatbázis szerepkörben.
példák
a következő példa megtisztítja az összes maradék információt a AdventureWorks2012
adatbázisból.
USE master; GO EXEC sp_clean_db_free_space @dbname = N'AdventureWorks2012';
Lásd még
adatbázis motor tárolt eljárások (Transact-SQL)
szellem razzia Folyamat útmutató
sp_clean_db_file_free_space (Transact-SQL)