SQL2005:
Backup Log DNName with no_log '这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。
go
dump transaction DNName with no_log
go
USE DNName
DBCC SHRINKFILE (2)
Go
SQL2008:
'在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY
SIMPLE WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY
SIMPLE --简单模式
GO
USE DNName
GO
DBCC SHRINKFILE (N'DNName_Log' , 11,
TRUNCATEONLY)
GO
'这里的DNName_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查询
'USE DNName
'GO
'SELECT file_id, nameFROM sys.database_files;
'GO
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式
GO
本文详细介绍了如何使用SQL2005和SQL2008进行数据库收缩操作及日志清理,包括使用特定命令集,确保数据库性能优化的同时维护数据完整性和安全性。
5万+

被折叠的 条评论
为什么被折叠?



