sp_clean_db_file_free_space (Transact-SQL)sp_clean_db_file_free_space (Transact-SQL)

APLICA-SE A: simSQL Server nãoBanco de Dados SQL do Azure nãoAzure Synapse Analytics (SQL DW) nãoParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Remove informações residuais deixadas em páginas de banco de dados devido a rotinas de modificação de dados no SQL ServerSQL Server.Removes residual information left on database pages because of data modification routines in SQL ServerSQL Server. sp_clean_db_file_free_space limpa todas as páginas em só um arquivo de um banco de dados.sp_clean_db_file_free_space cleans all pages in only one file of a database.

Ícone de link do tópico Convenções de sintaxe de Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxeSyntax

  
sp_clean_db_file_free_space   
[ @dbname ] = 'database_name'   
, @fileid = 'file_number'   
 [ , [ @cleaning_delay = ] 'delay_in_seconds' ] [;]  

ArgumentosArguments

[ @dbname=] 'database_name'[ @dbname= ] 'database_name'
É o nome do banco de dados a ser limpo.Is the name of the database to clean. DBName está sysname e não pode ser NULL.dbname is sysname and cannot be NULL.

[ @fileid=] 'file_number'[ @fileid= ] 'file_number'
É a ID de arquivo de dados a ser limpa.Is the data file id to clean. file_number está int e não pode ser NULL.file_number is int and cannot be NULL.

[ @cleaning_delay=] 'atraso_em_segundos'[ @cleaning_delay= ] 'delay_in_seconds'
Especifica um intervalo de atraso entre a limpeza das páginas.Specifies an interval to delay between the cleaning of pages. Isso ajuda a reduzir o efeito no sistema de E/S.This helps reduce the effect on the I/O system. atraso_em_segundos está int com um padrão de 0.delay_in_seconds is int with a default of 0.

Valores do código de retornoReturn Code Values

0 (êxito) ou 1 (falha)0 (success) or 1 (failure)

ComentáriosRemarks

As operações de exclusão de uma tabela ou as operações de atualização que fazem com que uma linha seja movida podem liberar espaço imediatamente em uma página por meio da remoção das referências à linha.Deletes operations from a table or update operations that cause a row to move can immediately free up space on a page by removing references to the row. No entanto, em certas circunstâncias, a linha pode permanecer fisicamente na página de dados como um registro fantasma.However, under certain circumstances, the row can physically remain on the data page as a ghost record. Os registros fantasmas são removidos periodicamente por um processo em segundo plano.Ghost records are periodically removed by a background process. Esses dados residuais não são retornados pelo Mecanismo de Banco de DadosDatabase Engine em resposta às consultas.This residual data is not returned by the Mecanismo de Banco de DadosDatabase Engine in response to queries. Entretanto, em ambientes nos quais a segurança física dos dados ou arquivos de backup está em risco, você pode usar sp_clean_db_file_free_space para limpar esses registros fantasmas.However, in environments in which the physical security of the data or backup files is at risk, you can use sp_clean_db_file_free_space to clean these ghost records.

O período de tempo necessário para a execução de sp_clean_db_file_free_space depende do tamanho do arquivo, do espaço livre disponível e da capacidade do disco.The length of time required to run sp_clean_db_file_free_space depends on the size of the file, the available free space, and the capacity of the disk. Como a execução de sp_clean_db_file_free_space pode afetar significativamente a atividade de E/S, é recomendável executar esse procedimento fora do horário de operação normal.Because running sp_clean_db_file_free_space can significantly affect I/O activity, we recommend that you run this procedure outside usual operation hours.

Antes da execução de sp_clean_db_file_free_space, é recomendável criar um backup completo do banco de dados.Before you run sp_clean_db_file_free_space, we recommend that you create a full database backup.

Relacionado sp_clean_db_free_space procedimento armazenado limpa todos os arquivos no banco de dados.The related sp_clean_db_free_space stored procedure cleans all files in the database.

PermissõesPermissions

Requer associação na função de banco de dados db_owner.Requires membership in the db_owner database role.

ExemplosExamples

O exemplo a seguir limpa todas as informações residuais do arquivo de dados primário do banco de dados AdventureWorks2012.The following example cleans all residual information from the primary data file of the AdventureWorks2012 database.

USE master;  
GO  
EXEC sp_clean_db_file_free_space   
@dbname = N'AdventureWorks2012', @fileid = 1 ;  

Consulte tambémSee Also

Procedimentos armazenados do mecanismo de banco de dados (Transact-SQL) Database Engine Stored Procedures (Transact-SQL)
Guia do processo de limpeza fantasmaGhost Cleanup Process Guide