sp_add_log_file_recover_suspect_db (Transact-SQL)
Область применения: SQL Server
Добавляет файл журнала в базу данных, когда восстановление не может завершиться в базе данных из-за нехватки места в журнале (ошибка 9002). После добавления sp_add_log_file_recover_suspect_db
файла отключите подозрительный параметр и завершит восстановление базы данных. Параметры совпадают с параметрами ALTER DATABASE database_name ADD LOG FILE.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_add_log_file_recover_suspect_db [ @dbName = ] 'database'
, [ @name = ] N'logical_file_name'
, [ @filename = ] N'os_file_name'
, [ @size = ] N'size'
, [ @maxsize = ] N'max_size'
, [ @filegrowth = ] N'growth_increment'
[ ; ]
Аргументы
[ @dbName = ] 'database'
Имя базы данных. @dbName — sysname без значения по умолчанию.
[ @name = ] N'logical_file_name'
Имя, используемое в SQL Server для ссылки на файл. Имя должно быть уникальным в пределах сервера. @name — nvarchar(260), без значения по умолчанию.
[ @filename = ] N'os_file_name'
Путь и имя файла, используемые операционной системой для файла. Файл должен находиться в экземпляре ядро СУБД. @filename — nvarchar(260), без значения по умолчанию.
[ @size = ] N'size'
Начальный размер файла. @size — nvarchar(20) с значением по умолчаниюNULL
. Укажите целое число; Не включать десятичное значение. Суффиксы MB
и KB
суффиксы можно использовать для указания мегабайтов или килобайтов. Значение по умолчанию — MB
. Минимальное значение размера файла — 512 КБ. Если @size не задано, значение по умолчанию равно 1 МБ.
[ @maxsize = ] N'max_size'
Максимальный размер, к которому может расти файл. @maxsize — nvarchar(20) с значением по умолчаниюNULL
. Укажите целое число; Не включать десятичное значение. Суффиксы MB
и KB
суффиксы можно использовать для указания мегабайтов или килобайтов. Значение по умолчанию — MB
.
Если @maxsize не указан, файл будет расти до тех пор, пока диск не будет заполнен. Журнал приложений Windows предупреждает администратора, если диск заполнен почти полностью.
[ @filegrowth = ] N'growth_increment'
Объем пространства, добавляемого в файл каждый раз, когда требуется новое пространство. @filegrowth — nvarchar(20), с значением по умолчаниюNULL
. Значение 0
указывает на отсутствие роста. Укажите целое число; Не включать десятичное значение. Значение может быть указано в MB
, KB
или проценте (%
). При %
указании приращение роста — это указанный процент размера файла во время увеличения. Если число указано без MB
KB
суффикса или %
суффикса, значение по умолчанию MB
.
Если @filegrowth , NULL
значение по умолчанию равно 10%
, а минимальное значение — 64 KB
. Указанный размер округляется до ближайших 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\MSSQL13.MSSQLSERVER\MSSQL\Data\db1_logfile2.ldf',
'1 MB';