12 března, 2022

sp_clean_db_free_space (Transact-SQL)

  • článek
  • 01/29/2021
  • 2 Zápis ke čtení
    • m
    • c
    • r
    • p
    • M
    • +4
je tato stránka užitečná?

Děkuji.

platí pro: yes SQL Server (všechny podporované verze)

odstraní zbytkové informace, které zůstaly na databázových stránkách kvůli rutinám modifikace dat v SQL Serveru. sp_clean_db_free_space čistí všechny stránky ve všech souborech databáze.

 ikona odkazu na téma konvence syntaxe Transact-SQL

syntaxe

sp_clean_db_free_space 'database_name' 'delay_in_seconds' ] 

argumenty

@dbname = ‚database_name‘
je název databáze k čištění. dbname je sysname a nemůže být NULL.

@cleaning_delay = ‚delay_in_seconds‘
určuje interval zpoždění mezi čištěním stránek. To pomáhá snížit účinek na I / o systém. delay_in_seconds je int s výchozí hodnotou 0.

návratové hodnoty kódu

0 (úspěch) nebo 1 (selhání)

poznámky

odstranění operací z tabulky nebo aktualizace operací, které způsobují přesunutí řádku, může okamžitě uvolnit místo na stránce odstraněním odkazů na řádek. Za určitých okolností však může řádek fyzicky zůstat na datové stránce jako záznam duchů. Záznamy duchů jsou pravidelně odstraňovány procesem na pozadí. Tato zbytková data nejsou vrácena databázovým strojem v reakci na dotazy. V prostředích, ve kterých je ohrožena fyzická bezpečnost dat nebo záložních souborů, však můžete tyto záznamy duchů vyčistit pomocí sp_clean_db_free_space. Chcete-li provést tuto operaci pro databázový soubor, použijte sp_clean_db_file_free_space (Transact-SQL).

doba potřebná ke spuštění sp_clean_db_free_space závisí na velikosti souboru, dostupném volném prostoru a kapacitě disku. Protože běh sp_clean_db_free_space může významně ovlivnit I / o aktivitu, doporučujeme tento postup spustit mimo obvyklou provozní dobu.

před spuštěním sp_clean_db_free_space doporučujeme vytvořit úplnou zálohu databáze.

související sp_clean_db_file_free_space uložená procedura může vyčistit jeden soubor.

oprávnění

vyžaduje členství v db_owner databázové roli.

příklady

následující příklad vyčistí všechny zbytkové informace z databáze AdventureWorks2012.

USE master; GO EXEC sp_clean_db_free_space @dbname = N'AdventureWorks2012'; 

Viz také

procedury uložené v databázovém stroji (Transact-SQL)
průvodce procesem čištění duchů
sp_clean_db_file_free_space (Transact-SQL)

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.