SQL Server 2008收缩日志文件
时间:2019-04-23 13:07 来源:linux.it.net.cn 作者:IT
1 使用背景
由于数据库的恢复模式被设置为“完全”,导致日志文件随着操作日益增大,以至于占用过多的磁盘空间
2 解决方法
使用命令dbcc shrinkfile可以收缩数据日志文件
use master
go
alter database 数据库名 set recovery simple with no_wait
go
alter database 数据库名 set recovery simple --简单模式
go
use 数据库名
go
dbcc shrinkfile(N'数据库名_log',10)
go
use master
go
alter database 数据库名 set recovery full with no_wait
go
alter database 数据库名 set recovery full --还原为完全模式
go
注意:
A. dbcc shrinkfile(N'数据库名_log',10)中的数据库名_log是逻辑名称,而不是实际文件名(个别情况下,逻辑名称/实际文件名不一致)
逻辑名称取得方法:选择数据库,右键"属性",左侧选择"文件",右侧显示的"数据库文件"中"逻辑名称"列
B. 关于dbcc shrinkfile的参数说明,见"dbcc shrinkfile参数说明"
说明:优点:此清除日志所运行消耗的时间短。
缺点:不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。
此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。
(责任编辑:IT)
1 使用背景 由于数据库的恢复模式被设置为“完全”,导致日志文件随着操作日益增大,以至于占用过多的磁盘空间 2 解决方法 使用命令dbcc shrinkfile可以收缩数据日志文件 use master go alter database 数据库名 set recovery simple with no_wait go alter database 数据库名 set recovery simple --简单模式 go use 数据库名 go dbcc shrinkfile(N'数据库名_log',10) go use master go alter database 数据库名 set recovery full with no_wait go alter database 数据库名 set recovery full --还原为完全模式 go 注意: A. dbcc shrinkfile(N'数据库名_log',10)中的数据库名_log是逻辑名称,而不是实际文件名(个别情况下,逻辑名称/实际文件名不一致) 逻辑名称取得方法:选择数据库,右键"属性",左侧选择"文件",右侧显示的"数据库文件"中"逻辑名称"列 B. 关于dbcc shrinkfile的参数说明,见"dbcc shrinkfile参数说明" 说明:优点:此清除日志所运行消耗的时间短。 缺点:不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。 此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。 (责任编辑:IT) |