• 在线音乐试听
  • 电影观看找一找
  • 微客许愿LOVE墙
  • 官方博客
  • 站长博客
中国微(微机)客网
站点选择: 网通镜像
  • 首 页
  • 电脑基础
  • 软件教程
  • 代码编程
  • 站长专区
  • 网络资源
  • 新闻娱乐
  • 站长博客
向站长投递您的原创文章 对本站意见反馈
  • 站长热点通告:电脑技术集中营!新上线版块: 点击许愿LOVE墙 点击进入站长博客 点击观看在线电影 点击试听在线音乐
  • 电脑硬件
  • 操作系统
  • 软件应用
  • 优化技巧
  • 防黑安全
  • P S 教程
  • Flash教程
  • Dreamweaver
  • 软件下载
  • Asp编程
  • Php编程
  • .Net编程
  • Access
  • MysQl
  • mssql
  • 其他代码
  • 站长工具
  • 搜索优化
  • 网站推广
  • 网站盈利
  • 域名空间
  • 网盘※相册
  • 综合其他
  • 游戏娱乐
  •                             | 在线音乐试听下载 | 在线电影观看| 在线小游戏| IT热点资讯 | 软件动态
                                      | 论坛快速注册 | 论坛会员登陆 | 论坛快速进入 | 许愿LOVE墙登陆
当前位置:中国微客网>>编程在线>>mssql>>浏览文章 软件搜索

压缩与清除MSSQL数据库日志的技巧

作者:未知 | 来源:互联网 | 文章点击数: | ChinaVik.Com

一般SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大:

  1、设置数据库为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择"简单",然后按确定保存。

  2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定。

  3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据。

  方法二

SET NOCOUNT ON
DECLARE @LogicalFileName sysname,
     @MaxMinutes INT,
     @NewSize INT
USE   tablename       -- 要操作的数据库名
SELECT @LogicalFileName = 'tablename_log', -- 日志文件名
@MaxMinutes = 10,        -- Limit on time allowed to wrap log.
     @NewSize = 1         -- 你想设定的日志文件的大小(M)
-- Setup / initialize
DECLARE @OriginalSize int
SELECT @OriginalSize = size 
  FROM sysfiles
  WHERE name = @LogicalFileName
SELECT 'Original Size of ' + db_name() + ' LOG is ' + 
     CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' + 
     CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'
  FROM sysfiles
  WHERE name = @LogicalFileName
CREATE TABLE DummyTrans
  (DummyColumn char (8000) not null)
DECLARE @Counter  INT,
     @StartTime DATETIME,
     @TruncLog VARCHAR(255)
SELECT @StartTime = GETDATE(),
     @TruncLog = 'BACKUP LOG ' + db_name() + ' WITH TRUNCATE_ONLY'
DBCC SHRINKFILE (@LogicalFileName, @NewSize)
EXEC (@TruncLog)
-- Wrap the log if necessary.
WHILE   @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired
    AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName)
    AND (@OriginalSize * 8 /1024) > @NewSize 
  BEGIN -- Outer loop.
   SELECT @Counter = 0
   WHILE ((@Counter < @OriginalSize / 16) AND (@Counter < 50000))
    BEGIN -- update
     INSERT DummyTrans VALUES ('Fill Log') 
     DELETE DummyTrans
     SELECT @Counter = @Counter + 1
    END 
   EXEC (@TruncLog) 
  END  
SELECT 'Final Size of ' + db_name() + ' LOG is ' +
     CONVERT(VARCHAR(30),size) + ' 8K pages or ' + 
     CONVERT(VARCHAR(30),(size*8/1024)) + 'MB'
  FROM sysfiles
  WHERE name = @LogicalFileName
DROP TABLE DummyTrans
SET NOCOUNT OFF


朋友若要转载,采集本站内容,请注明出自www.chinavik.com-中国微(微机)客网(搜集整理不容易)

上一篇:mssql2000卸载后不能重新安装的解决办法 下一篇:msSQL Server数据导入之行为规范

关键字 Tags:  mssql 技巧 数据库
 查看所有评论请《点击右侧发表评论》【发表评论】【告诉好友】【打印此文】【收藏此文】【关闭窗口】



 发表评论 特别声明:
·本站发布内容均为客观表达作者观点,不代表站长立场,请勿攻击和漫骂
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为

网络广告信息

中国微客网音乐频道开通:在线MP3听歌、歌词下载 中国微客网影视频道开通:电影搜索引擎,在线看电影,电影在线观看,免费电影-在线观看下载,最新大片

推荐文章

  • ·MS SQL SERVER 安装完全图解篇 2008/03/09
  • ·msSQL Server 数据库学习入门(五 2008/03/09
  • ·msSQL Server 数据库学习入门(四 2008/03/09
  • ·msSQL Server 数据库学习入门(三 2008/03/09
  • ·msSQL Server 数据库学习入门(二 2008/03/09
  • ·msSQL Server 数据库学习入门(一 2008/03/09
  • ·常见的几种数据库对象 2008/03/09
  • ·msSQL Server数据导入之行为规范 2008/03/09
  • ·压缩与清除MSSQL数据库日志的技巧 2008/03/09
  • ·mssql2000卸载后不能重新安装的解 2008/03/09
  • ·mssql数据库和mysql数据库的区别 2008/03/09

热点资讯

  • ·MS SQL SERVER 安装完全图解篇 2008/03/09
  • ·msSQL Server 数据库学习入门(五 2008/03/09
  • ·msSQL Server 数据库学习入门(四 2008/03/09
  • ·msSQL Server 数据库学习入门(三 2008/03/09
  • ·msSQL Server 数据库学习入门(二 2008/03/09
  • ·msSQL Server 数据库学习入门(一 2008/03/09
  • ·常见的几种数据库对象 2008/03/09
  • ·msSQL Server数据导入之行为规范 2008/03/09
  • ·压缩与清除MSSQL数据库日志的技巧 2008/03/09
  • ·mssql2000卸载后不能重新安装的解 2008/03/09
  • ·mssql数据库和mysql数据库的区别 2008/03/09

设为首页 - 加入收藏 - 联系站长 - 友情链接 - 网站留言 - 广告合作 - 网站地图


郑重声明:本站内容均来自网上,请网友自行辨别!如有侵权请及时告知,我们会马上处理!...本站内容纯手工录入,若转载请注明出处,万分感谢。
点击技术支持,建议合作 QQ:在线交谈11753718 QQ交流群 47614632 E-Mail:chinavik#163.com 电话tell:15898705041 chinavik#126.com
Copyright 2006-2008 Powered by 中国微客-电脑技术在线All Rights Reserved
备案/许可证号:鲁ICP备08002060号