真爱无限的知识驿站

学习积累技术经验,提升自身能力

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

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright 2024-2027 pukuimin Rights Reserved.
粤ICP备17100155号