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 相同。
語法
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 或 KB。 預設值為 MB
。 最小值為 512 KB。 如果未 指定@size ,則預設值為 1 MB。
[ @maxsize = ] N'max_size'
檔案可以成長的大小上限。 @maxsize為 nvarchar(20),預設值為 NULL
。 指定整數;不包含十進位。 MB
和 KB
後綴可用來指定 MB 或 KB。 預設值為 MB
。
如果未 指定@maxsize ,檔案就會成長到磁碟已滿為止。 當磁碟即將滿時,Windows 應用程式記錄會警告系統管理員。
[ @filegrowth = ] N'growth_increment'
每次需要新空間時,新增至檔案的空間量。 @filegrowth為 nvarchar(20),預設值為 NULL
。 的值 0
表示沒有成長。 指定整數;不包含十進位。 值可以在、 KB
或 百分比中指定MB
。%
當指定時 %
,成長增量是當增量發生時,檔案大小的指定百分比。 如果指定了沒有 MB
、 KB
或 %
後綴的數位,則預設值為 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';