Share via


sp_add_log_file_recover_suspect_db (Transact-SQL)

Adiciona um arquivo de log a um grupo de arquivos quando a recuperação não pode ser concluída em um banco de dados devido a espaço insuficiente de log (erro 9002). Após a adição do arquivo, sp_add_log_file_recover_suspect_db desativa a configuração suspeita e conclui a recuperação do banco de dados. Os parâmetros são os mesmos de ALTER DATABASE database_name ADD LOG FILE.

Observação importanteImportante

Antes de usar esse procedimento armazenado, considere as alternativas descritas em Solucionando problemas de espaço de dados insuficiente no disco.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

sp_add_log_file_recover_suspect_db [ @dbName= ] 'database' , 
    [ @name = ] 'logical_file_name' , 
    [ @filename= ] 'os_file_name' , 
    [ @size = ] 'size' , 
    [ @maxsize = ] 'max_size' , 
    [ @filegrowth = ] 'growth_increment'

Argumentos

  • [ @dbName = ] 'database'
    É o nome do banco de dados. database é sysname, sem padrão.

  • [ @name= ] 'logical_file_name'
    É o nome usado no Mecanismo de Banco de Dados do SQL Server 2005 quando um arquivo é referenciado. O nome precisa ser exclusivo no servidor. logical_file_name é nvarchar(260), sem padrão.

  • [ @filename = ] 'os_file_name'
    É o caminho e o nome de arquivo usados pelo sistema operacional para o arquivo. O arquivo precisa residir no servidor em que Mecanismo de Banco de Dados está instalado. os_file_name é nvarchar(260), sem padrão.

  • [ @size= ] **'**size '
    É o tamanho inicial do arquivo. size é nvarchar(20), com um padrão NULL. Especifique um número inteiro; não inclua um decimal. Os sufixos MB e KB podem ser usados para especificar megabytes ou quilobytes. O padrão é MB. O valor mínimo é 512 KB. Se size não estiver especificado, o padrão será 1 MB.

  • [ @maxsize= ] **'**max_size '
    É o tamanho máximo até o qual o arquivo poderá crescer. max_size é nvarchar(20), com um padrão NULL. Especifique um número inteiro; não inclua um decimal. Os sufixos MB e KB podem ser usados para especificar megabytes ou quilobytes. O padrão é MB.

    Se max_size não for especificado, o arquivo crescerá até que o disco fique cheio. O log de aplicativo do Microsoft Windows adverte o administrador quando o disco está quase cheio.

  • [ @filegrowth= ] **'**growth_increment '
    É a quantidade de espaço adicionada ao arquivo cada vez que um novo espaço é necessário. growth_increment é nvarchar(20), com um padrão NULL. Um valor de 0 indica que não houve crescimento. Especifique um número inteiro; não inclua um decimal. O valor pode ser especificado em MB, KB ou porcentagem (%). Quando a % é especificada, o incremento de crescimento é a porcentagem especificada do tamanho do arquivo no momento em que ocorre o incremento. Se um número for especificado sem um sufixo MB, KB, ou %, o padrão será MB.

    Se growth_increment for NULL, o valor padrão será 10% e o valor de tamanho mínimo será 64 KB. O tamanho especificado é arredondado para o mais próximo de 64 KB.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Conjuntos de resultados

Nenhum

Permissões

As permissões de execução usam como padrão membros da função de servidor fixa sysadmin. Essas permissões não são transferíveis.

Exemplos

No exemplo a seguir, o banco de dados db1 foi marcado como suspeito durante a recuperação, devido a espaço insuficiente de log (erro 9002).

USE master;
GO
EXEC sp_add_log_file_recover_suspect_db db1, logfile2,
'C:\Program Files\Microsoft SQL
    Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\db1_logfile2.ldf', 
    '1MB';