Поделиться через


sp_add_log_file_recover_suspect_db (Transact-SQL)

Добавляет файл журнала в файловую группу, если восстановление базы данных не может быть завершено из-за недостатка места для хранения журнала (ошибка 9002). После добавления файла хранимая процедура sp_add_log_file_recover_suspect_db отключает параметр подозрения и завершает восстановление базы данных. Параметры этой процедуры такие же, как и у инструкции ALTER DATABASE database_name ADD LOG FILE.

ms188052.note(ru-ru,SQL.90).gifВажно!
Перед применением данной хранимой процедуры рекомендуется рассмотреть альтернативные решения, описанные в разделе Диагностика нехватки места на диске.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

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'

Аргументы

  • [ @dbName = ] 'database'
    Имя базы данных. Аргумент database имеет тип sysname и не имеет значения по умолчанию.
  • [ @name= ] 'logical_file_name'
    Имя, используемое компонентом SQL Server 2005 Database Engine для ссылки на файл. Это имя должно быть уникальным в сервере. Аргумент logical_file_name имеет тип nvarchar(260) и не имеет значения по умолчанию.
  • [ @filename = ] 'os_file_name'
    Путь и имя файла, используемые операционной системой. Файл должен находиться на сервере, на котором установлен компонент Database Engine. Аргумент os_file_name имеет тип nvarchar(260) и не имеет значения по умолчанию.
  • [ @size= ] **'**size '
    Исходный размер файла. Аргумент size имеет тип nvarchar(20) и значение по умолчанию NULL. Следует использовать в качестве этого аргумента целое число (без указания дробной части). Для указания единицы измерения размера файла (мегабайт или килобайт) можно использовать суффиксы МБ и КБ. По умолчанию, размер файла измеряется в мегабайтах. Минимальное значение размера файла — 512 КБ. Если аргумент size не указан, по умолчанию используется значение 1 МБ.
  • [ @maxsize= ] **'**max_size '
    Максимальный размер, до которого может увеличиться размер файла. Аргумент max_size имеет тип nvarchar(20) и значение по умолчанию NULL. Следует использовать в качестве этого аргумента целое число (без указания дробной части). Для указания единицы измерения размера файла (мегабайт или килобайт) можно использовать суффиксы МБ и КБ. По умолчанию, размер файла измеряется в мегабайтах.

    Если аргумент max_size не указан, файл будет увеличиваться до исчерпания пространства на диске. Журнал приложений Microsoft Windows предупреждает администратора, если диск заполнен почти полностью.

  • [ @filegrowth= ] **'**growth_increment '
    Объем пространства, добавляемого к файлу каждый раз, когда требуется новое пространство. Аргумент growth_increment имеет тип nvarchar(20) и значение по умолчанию NULL. Значение 0 обозначает отсутствие прироста. Следует использовать в качестве этого аргумента целое число (без указания дробной части). Значение может быть задано в мегабайтах (МБ), килобайтах (КБ) или процентах (%). Если значение задано в процентах, приращение рассчитывается в процентах от размера файла в тот момент, когда потребовалось приращение. Если число указано без суффикса МБ, КБ или %, по умолчанию приращение измеряется в мегабайтах.

    Если аргумент growth_increment равен NULL, по умолчанию используется значение 10%, а минимальный размер составляет 64 КБ. Указанный размер округляется до ближайших 64 КБ.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Результирующие наборы

Нет

Разрешения

По умолчанию, разрешения на выполнение этой хранимой процедуры имеют члены фиксированной серверной роли sysadmin. Эти разрешения не могут передаваться другим пользователям.

Примеры

В следующем примере база данных db1 была отмечена во время восстановления как подозрительная из-за недостатка места для хранения журнала (ошибка 9002).

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

См. также

Справочник

ALTER DATABASE (Transact-SQL)
sp_add_data_file_recover_suspect_db (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005