SQL2005、2008、2000 清空删除日志
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
sqlserver2000压缩日志
可以将jb51.ldf文件变得很小,方便备份数据库等,在sqlserver查询分析器中执行即可。
复制代码 代码如下:
DUMP TRANSACTION [
DNName] WITH NO_LOG
BACKUP LOG [
DNName] WITH NO_LOG
DBCC SHRINKDATABASE([
DNName])
里面的数据库名要清楚:
详细出处参考:http://www.jb51.net/article/37305.htm