SQLSERVER压缩数据文件的用处有多大
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了SQLSERVER压缩数据文件的用处有多大,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2128字,纯文字阅读大概需要4分钟。
内容图文
SQLSERVER压缩数据文件的用处有多大 前奏: 前些天因为客户那边的问题(其实是盗版问题),只能使用免费的SQLSERVER EXPRESS版本 SQLSERVER2005 的express版本的SQLSERVER的整个数据库的数据文件大小限制为4GB(SQLSERVER2012 express版本限制是10G ),就是
SQLSERVER压缩数据文件的用处有多大
前奏:
前些天因为客户那边的问题(其实是盗版问题),只能使用免费的SQLSERVER EXPRESS版本
SQLSERVER2005 的express版本的SQLSERVER的整个数据库的数据文件大小限制为4GB(SQLSERVER2012express版本限制是10G),就是说不管你用多少个文件组,多少个辅助数据文件ndf
所有加起来都不能超过4GB(mdf+ndf)
事务日志文件大小没有限制
因为我们的数据库只是使用了一个主数据文件GPOS.mdf和一个事务日志文件GPOS.ldf
本人的解决思路:
本人在想如果是这样,到时候就收缩数据库呗
在网上查了一下资料:由于DBCC SHRINKDATABASE一次运行会同时影响所有的文件(包括数据文件和日志文件),使用者不能
指定每个文件的目标大小,其结果可能不能达到预期的要求。所以建议先做好规划,对每个文件确定预期目标,然后使用DBCC SHRINKFILE
来一个文件一个文件地做比较稳妥
本来很开心的,网上资料都说使用DBCC SHRINKFILE来收缩文件,那这样就不怕拉 (我不怕不怕拉~)
但是,往下看那个资料:
1、首先了解数据文件当前的使用情况
收缩量的大小不可能超过当前文件的空闲空间的大小。如果想要压缩数据库的大小,首先要确认数据文件里的确有相应未被使用的空间。如果空间都在
使用中,那就要确认大量占用空间的对象(表格或索引)。然后通过归档历史数据,先把空间释放出来
2、主数据文件(primary file)是不能被清空的。能被完全清空的只有辅助数据文件
3、如果要把一个文件组整个清空,要删除分配在这个文件组上的对象(表格或索引),或者把他们移到其他文件组上。
DBCC SHRINKFILE不会帮你做这个工作
把数据文件里面数据和对象清除完、确认数据文件(组)有足够的空闲空间后,管理员就可以使用DBCC SHRINKFILE来缩小或清空指定文件了。
如果要缩小文件,就填上需要的target_size,如果要清空文件,就选择EMPTYFILE
根据上面资料所说,本人的解决思路是:
1、确认大量占用空间的对象(表格或索引)。然后通过归档历史数据,先把空间释放出来再压缩数据文件
2、重建索引,把一些数据页面重排一次,原先的页面被释放,所占用的分区也被释放,再去DBCC SHRINKFILE
如果你们有其他解决方法希望你们告诉我,谢谢您们了!!
内容总结
以上是互联网集市为您收集整理的SQLSERVER压缩数据文件的用处有多大全部内容,希望文章能够帮你解决SQLSERVER压缩数据文件的用处有多大所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。