SQL2005、2008、2000清空删除日志

 

 

SQL2005、2008、2000清空删除日志
 
SQL2005清空删除日志:
 
代码如下:
1
Backup Log DNName with no_log
 '这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。
 
1
2
3
4
5
6
go
dump transaction DNName with no_log 
go
USE DNName
DBCC SHRINKFILE (2)
Go

 

 
SQL2008清空删除日志:
 
'在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
 
代码如下:
1
2
3
4
5
6
7
8
9
10
11
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里是什么名字的话,可以用以下注释的语句进行查询
 
1
2
3
4
5
6
7
8
9
10
11
12
13
'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查询分析器中执行即可。 
代码如下:
1
2
3
DUMP TRANSACTION [DNName] WITH NO_LOG 
BACKUP LOG [DNName] WITH NO_LOG 
DBCC SHRINKDATABASE([DNName])

 

 
里面的数据库名要清楚:
 

 

 

    相关文章

评论

发表新评论

此内容将保密,不会被其他人看见。
点击刷新验证码
  • 可用的 UBB 标签:
  • 留言最长字数:1000。