sp_add_log_file_recover_suspect_db (Transact-SQL)
如果由于数据库上日志空间不足(错误 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 = ] '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 数据库引擎中引用文件时使用的名称。该名称在服务器上必须是唯一的。logical_file_name 的数据类型为 nvarchar(260),无默认值。[ @filename = ] 'os_file_name'
由操作系统使用的文件的路径和文件名。该文件必须驻留在安装数据库引擎的服务器上。os_file_name 的数据类型为 nvarchar(260),无默认值。[ @size= ] **'**size '
文件的初始大小。size 的数据类型为 nvarchar(20),默认值为 NULL。指定一个整数,不包含小数位。可以使用 MB 和 KB 后缀指定兆字节或千字节。默认值为 MB。最小值为 512 KB。如果未指定 size,则默认值为 1 MB。[ @maxsize= ] **'**max_size '
文件可增至的最大文件大小。max_size 的数据类型为 nvarchar(20),默认值为 NULL。指定一个整数,不包含小数位。可以使用 MB 和 KB 后缀指定兆字节或千字节。默认值为 MB。如果未指定 max_size,则文件将增长到磁盘变满为止。当磁盘将满时,Microsoft Windows 应用程序日志会向管理员发出警告。
[ @filegrowth= ] **'**growth_increment '
每次需要新空间时添加到文件中的空间量。growth_increment 的数据类型为 nvarchar(20),默认值为 NULL。0 值表示不增长。指定一个整数,不包含小数位。该值可按 MB、KB 或百分比 (%) 形式指定。如果指定百分比 (%),则增量大小为发生增长时文件大小的指定百分比。如果未在数量后面指定 MB、KB 或 %,则默认值为 MB。如果 growth_increment 为 NULL,则默认值为 10%,最小值为 64 KB。指定的大小舍入为最接近的 64 KB 的倍数。
返回代码值
0(成功)或 1(失败)
结果集
无
权限
执行权限默认授予 sysadmin 固定服务器角色的成员。这些权限是不可传递的。
示例
在以下示例中,数据库 db1 在恢复期间由于日志空间不足(错误 9002)而标记为可疑。
USE master;
GO
EXEC sp_add_log_file_recover_suspect_db db1, logfile2,
'C:\Program Files\Microsoft SQL
Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\db1_logfile2.ldf',
'1MB';