zoukankan      html  css  js  c++  java
  • SQL Server压缩数据库文件

    当mdf或者ndf文件很大时,传统的dbcc shrinkfile命令很难生效,目前可行的解决方案:

    1. 创建新文件组通过对剩余表重建并指定聚集索引到新文件组方式清空源文件组方式进行存储空间释放
    2. 参照使用以下脚本写循环等待文件收缩完成:

    大数据文件收缩

    DECLARE @BeginSize       BIGINT                                 --原始大小MB

    DECLARE @EndSize BIGINT                                 --最终大小MB

    DECLARE @ShrinkSize BIGINT                             --需要收缩的大小MB

    DECLARE @UnitSize INT                                        --每次收缩的大小MB

    DECLARE @Loop                INT                     --循环次数

    DECLARE @FileName       VARCHAR(256)                  --收缩的文件逻辑名称

     

    SET @UnitSize = 512

    SET @BeginSize = 239493

    SET @EndSize = 164413

    SET @ShrinkSize = @BeginSize - @EndSize

    SET    @FileName = N'需要收缩的数据文件逻辑名称'

    SET @Loop = 1

     

    WHILE       @ShrinkSize > @Loop * @UnitSize

    BEGIN

     

    SET @EndSize = @BeginSize - @Loop * @UnitSize

    PRINT 'DBCC SHRINKFILE (' + CAST(@FileName AS VARCHAR) + ',' + CAST(@EndSize AS VARCHAR) + ') BEGING DATETIME:' + CAST(GETDATE() AS VARCHAR)

    DBCC SHRINKFILE (@FileName, @EndSize)

    PRINT 'DBCC SHRINKFILE (' + CAST(@FileName AS VARCHAR) + ',' + CAST(@EndSize AS VARCHAR) + ') END DATETIME:' +CAST(GETDATE() AS VARCHAR)

    SET @Loop = @Loop + 1

     

    END

  • 相关阅读:
    成功解决vc6.0智能提示消失的BUG
    如何在vc6,vc7,vc8下编译x264
    Visual C++ 操作MS Offfice 控件
    在英文版Visual Studion 2005 professional 中使用 Windows Mobile 2003 SE中文模拟器
    x264 20060731 svn 版的编码移植
    泛型算法:Tips
    05年度EmilMatthew’s Blog文档整理
    常用软件滤波方法及其示例程序
    windows server 2003 配置
    TI C64X 视频处理应用编程重点内容提示
  • 原文地址:https://www.cnblogs.com/dotagg/p/6364452.html
Copyright © 2011-2022 走看看