sql-server – 缩小SQL Server日志文件如何影响性能?
|
我有一个SQL Server 2008数据库,其数据大小约为2GB,但日志文件超过8GB.对于2008年之前的数据库,我可以使用“备份日志”和TRUNCATE_ONLY选项,但2008和更高版本的数据库不再提供此选项. 我有一个截断日志文件的脚本: USE [MyDatabase]
GO
ALTER DATABASE [MyDatabase] SET RECOVERY SIMPLE WITH NO_WAIT
DBCC shrinkfile('MyDatabase_log',1)
ALTER DATABASE [MyDatabase] SET RECOVERY FULL WITH NO_WAIT
GO
这会完全截断日志文件,但我的问题是:这会影响性能吗? 我每天执行两次完整备份,因此就数据前滚而言,日志实际上并不是必需的. 解决方法我真的推荐Paul S. Randal阅读 Importance of proper transaction log size management.实际情况是,只有两种非常好的方法来处理事务日志: >使用常规LOG文件备份,LOG文件将在每次LOG备份后重复使用它的空间,并且不会无限增长,或者 关于LOG文件截断和性能的问题在于,当要增加LOG文件时,您将始终获得性能损失(来自上述链接博客文章的引用):
更新:不要将LOG文件截断误认为是DATA文件收缩.数据文件缩小真的很糟糕.详情请见Why you should not shrink your data files. (编辑:张家界站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 广角变焦镜头 佳能16-35mm f/2.8L III
- sql-server – 为什么在SQL Server 2012中设置空结果的查询
- 如果数据库表更新/插入,如何让Windows C#控件自动更新?
- 使用SQL逐字翻译字符串
- sql-server – VB6 ADODB.Recordset RecordCount属性始终返
- 为什么我们需要像PostMSQL这样的数据库上的RabbitMQ等消息代
- Mandrake Linux9.2发布 64位版本即将放出
- 解决Windows远程桌面连接每次都提示输入密码的问题
- 谁说AI无用?疫情下,AI已经代替人类做了很多...
- sql-server-2008 – 如何将值从动态SQL存储过程返回到实体框


