SQL2008清除所有数据库日志脚本【鸡蛋】
来源:互联网 发布:条形码识别软件 编辑:程序博客网 时间:2024/05/01 17:57
use master
--SQL清除所有数据库日志脚本
declare @CurrentDataBaseName nvarchar(100)declare @CurrentDataBaseID nvarchar(100)
declare @CurrentLogName nvarchar(100)
declare @CurrentClearString nvarchar(4000)
declare @CurrentLogFileName nvarchar(255)
declare @CurrentClearLogString nvarchar(2000)
--查询所有数据库名称
--select * from master..sysdatabases where dbid>=7
declare tb cursor local for select name,dbid from master..sysdatabases where dbid>=7;
open tb
fetch next from tb into @CurrentDataBaseName,@CurrentDataBaseID
while @@fetch_status=0
begin
--查询指定数据库对应的所有日志文件
--select * from sys.database_files
--使用游标查询数据库对应的日志文件
set @CurrentLogFileName=''
set @CurrentClearLogString=''
--select * from sysaltfiles where dbid=7 and status>2;
declare tf cursor local for select name from sysaltfiles where dbid=@CurrentDataBaseID and status>2 and groupid<>1;
open tf
fetch next from tf into @CurrentLogFileName
while @@fetch_status=0
begin
if @CurrentClearLogString<>''
begin
set @CurrentClearLogString+='
DBCC SHRINKFILE (['+@CurrentLogFileName+'] , 11, TRUNCATEONLY)'
--print @CurrentClearLogString
end
else
begin
set @CurrentClearLogString='
DBCC SHRINKFILE (['+@CurrentLogFileName+'] , 11, TRUNCATEONLY)'
end
--print '当前清除日志文件语句'+@CurrentClearLogString
fetch next from tf into @CurrentLogFileName
end
close tf
deallocate tf
--print @CurrentClearLogString;
set @CurrentClearString='
USE [master]
ALTER DATABASE ['+@CurrentDataBaseName+'] SET RECOVERY SIMPLE WITH NO_WAIT
ALTER DATABASE ['+@CurrentDataBaseName+'] SET RECOVERY SIMPLE
USE ['+@CurrentDataBaseName+']'+@CurrentClearLogString+'
USE [master]
ALTER DATABASE ['+@CurrentDataBaseName+'] SET RECOVERY FULL WITH NO_WAIT
ALTER DATABASE ['+@CurrentDataBaseName+'] SET RECOVERY FULL'
print @CurrentClearString;
exec sp_executesql @CurrentClearString;
print '清除数据库'+@CurrentDataBaseName +'日志完成,操作语句'
fetch next from tb into @CurrentDataBaseName,@CurrentDataBaseID
end
close tb
deallocate tb
print '清除所有数据库日志完成'
转自:http://blog.csdn.net/xqf222/article/details/7440627
尊重原创
--清除单个数据库日志
USE [master]
GO
ALTER DATABASE [KLWebsiteGlobal3.0] SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE [KLWebsiteGlobal3.0] SET RECOVERY SIMPLE --简单模式
GO
USE [KLWebsiteGlobal3.0]
GO
DBCC SHRINKFILE (N'KLWebsiteGlobal3.0_log' , 11, TRUNCATEONLY)
GO
USE [master]
GO
ALTER DATABASE [KLWebsiteGlobal3.0] SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE [KLWebsiteGlobal3.0] SET RECOVERY FULL --还原为完全模式
GO
- SQL2008清除所有数据库日志脚本【鸡蛋】
- SQL2008备份所有数据库脚本【鸡蛋】
- SQL2008清除数据库日志脚本
- SQL2008清除日志文件脚本
- SQL清除所有数据库日志脚本
- SQL清除所有数据库日志脚本
- SQL2008中清除日志
- SQL2008下清除日志
- SQL2008清除日志
- SQL2008清除日志
- SQL2008压缩清除日志方法
- SQL2008 清除日志文件方法
- SQL2000 日志清除和数据库压缩脚本
- Sql2008 收缩数据库日志
- SQL2008删除所有数据表脚本
- 在SQL2008中清除日志(转)
- SQL2008日志文件过大,清除方法
- SQL2008根据日志还原数据库
- dedecms自定义标签调用自定义模型中非空字段文章
- eclipse.ini内存设置各参数含义
- Java包装类
- 网页素材大宝库:40套高质量的网站纹理背景素材
- 贷款计算源码
- SQL2008清除所有数据库日志脚本【鸡蛋】
- struts2 标签的for循环
- JAVA多态——另解
- php文件缓存类
- 10个针对特定平台的实用的代码库
- 向前端设计和开发人员推荐10本优秀的免费电子书
- ubuntu 配置 taglist
- Bat命令学习-1
- android 绘制折线图