欢迎来到代码驿站!

MsSql

当前位置:首页 > 数据库 > MsSql

SQL Server误区30日谈 第9天 数据库文件收缩不会影响性能

时间:2021-02-03 18:25:39|栏目:MsSql|点击:

误区 #9: 数据库文件收缩不会影响性能

错误!

        收缩数据库文件唯一不影响性能的情况是文件末尾有剩余空间的情况下,收缩文件指定了TruncateOnly选项。

    收缩文件的过程非常影响性能,这个过程需要移动大量数据从而造成大量IO,这个过程会被记录到日志从而造成日志暴涨,相应的,还会占去大量的CPU资源。

    不仅在收缩的过程中影响性能,并且在文件收缩之后同样影响应能,收缩产生的大量日志会被事务日志传送,镜像,复制能操作重复执行。而空间不够时,文件还需要填0初始化从而影响性能(除非你开启的不用填零初始化的选项)。

    这还不算最糟,最糟的结果是文件收缩造成了大量的索引碎片,对于scan操作来说这个碎片影响性能。

    不幸的是,收缩数据库的代码不是我写的(如果要是我写的话,我一开始就不会允许这种机制的)所以我们唯一能做的就是接受这种操作。

    如果你想找到替代数据库文件收缩的方式,请看这篇博文:Why you should not shrink your data files,或者是一开始你就对文件做好规划:Importance of data file size management。还有这篇:TGIF Time Warp.

    孩子,记住这一点:

  •     数据文件收缩是邪恶的
  •     收缩数据库更加邪恶
  •     自动收缩那简直就是十恶不赦了

    简单的对收缩说NO就可以让我们永远远离其造成的烦恼。

上一篇:sql基本函数大全

栏    目:MsSql

下一篇:使用 SQL 服务器时,"评估期已过期"错误消息(解决方法)

本文标题:SQL Server误区30日谈 第9天 数据库文件收缩不会影响性能

本文地址:http://www.codeinn.net/misctech/56132.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有