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。 指定整數;不包含十進位。 MBKB 後綴可用來指定 MB 或 KB。 預設值為 MB。 最小值為 512 KB。 如果未 指定@size ,則預設值為 1 MB。

[ @maxsize = ] N'max_size'

檔案可以成長的大小上限。 @maxsize為 nvarchar(20),預設值為 NULL。 指定整數;不包含十進位。 MBKB 後綴可用來指定 MB 或 KB。 預設值為 MB

如果未 指定@maxsize ,檔案就會成長到磁碟已滿為止。 當磁碟即將滿時,Microsoft Windows 應用程式記錄會警告系統管理員。

[ @filegrowth = ] N'growth_increment'

每次需要新空間時,新增至檔案的空間量。 @filegrowth為 nvarchar(20),預設值為 NULL。 的值 0 表示沒有成長。 指定整數;不包含十進位。 值可以在、 KB或 百分比中指定MB% 當指定時 % ,成長增量是當增量發生時,檔案大小的指定百分比。 如果指定了沒有 MBKB% 後綴的數位,則預設值為 MB

如果 @filegrowth 為 NULL,則預設值為 10%,而最小值為 64 KB。 指定的大小會捨入到最接近 64 KB。

傳回碼值

0 (成功)或 1 (失敗)。

結果集

無。

權限

執行許可權預設為 sysadmin 固定伺服器角色的成員。 這些許可權無法傳輸。

範例

在下列範例中,由於記錄空間不足(錯誤 9002),資料庫 db1 在復原期間標示為可疑。

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';