sys.sp_add_log_file_recover_suspect_db (Transact-SQL)

Aplica-se:SQL Server

Adiciona um arquivo de log a um banco de dados quando a recuperação não pode ser concluída em um banco de dados devido ao espaço de log insuficiente (erro 9002). Depois que o arquivo é adicionado, 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 DATABASEdatabase_name ARQUIVO DE LOG DE ADICIONAR.

Convenções de sintaxe de Transact-SQL

Sintaxe

sys.sp_add_log_file_recover_suspect_db
    [ @dbName = ] N'dbName'
    , [ @name = ] N'name'
    , [ @filename = ] N'filename'
    [ , [ @size = ] N'size' ]
    [ , [ @maxsize = ] N'maxsize' ]
    [ , [ @filegrowth = ] N'filegrowth' ]
[ ; ]

Argumentos

[ @dbName = ] N'dbName'

O nome do banco de dados. @dbName é sysname, sem padrão.

[ @name = ] N'nome'

O nome usado no SQL Server para fazer referência ao arquivo. O nome deve ser exclusivo no servidor. @name é nvarchar(260), sem padrão.

@filename [ = ] N'nome do arquivo'

O caminho e o nome do arquivo usados pelo sistema operacional para o arquivo. O arquivo deve residir em uma instância do Mecanismo de Banco de Dados. @filename é nvarchar(260), sem padrão.

@size [ = ] N'tamanho'

O tamanho inicial do arquivo. @size é nvarchar(20), com um padrão de NULL. Especifique um número inteiro; não inclua um decimal. Os MB sufixos and KB podem ser usados para especificar megabytes ou kilobytes. O padrão é MB. O valor mínimo é 512 KB. Se @size não for especificado, o padrão será 1 MB.

[ @maxsize = ] N'maxsize'

O tamanho máximo para o qual o arquivo pode crescer. @maxsize é nvarchar(20), com um padrão de NULL. Especifique um número inteiro; não inclua um decimal. Os MB sufixos and KB podem ser usados para especificar megabytes ou kilobytes. O padrão é MB.

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

[ @filegrowth = ] N'crescimento de arquivo'

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

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

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Conjunto de resultados

Nenhum.

Permissões

Executar permissões padrão para 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

EXECUTE sp_add_log_file_recover_suspect_db
    db1,
    logfile2,
    'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Data\db1_logfile2.ldf',
    '1 MB';