左岸印象

批量收缩Mssql数据库

分类: 服务器类 作者: 阅读: 2,433        暂无评论

DECLARE @name VARCHAR(25)
DECLARE @SQL VARCHAR(1000)
DECLARE @logid INT
DECLARE sysdatabase_name CURSOR FOR SELECT name FROM master.dbo.sysdatabases
OPEN sysdatabase_name
FETCH NEXT FROM sysdatabase_name INTO @name

WHILE @@FETCH_STATUS = 0
BEGIN
IF ( @name NOT IN (‘xxx’))
BEGIN
SET @SQL =’ DECLARE @logid INT
USE [' + @name+']
SELECT @logid = fileid FROM sysfiles WHERE RIGHT(rtrim(filename),3) = ”ldf”
BACKUP LOG [' + @name+'] WITH NO_LOG
DBCC SHRINKFILE (@logid) ‘
EXEC(@SQL)
END

FETCH NEXT FROM sysdatabase_name INTO @name

END
CLOSE sysdatabase_name
DEALLOCATE sysdatabase_name


标签: , , , ,

转载注明: 转自左岸印象

本站遵循: 署名-非商业性使用-禁止演绎 3.0 共享协议

文章分享: Digg / Twitter / Facebook / GReader / 鲜果 / 豆瓣 / 人人网 / 开心网 / 新浪微博



发表评论




XHTML: 您可以使用如下代码:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">