SQL Server 2008删除或压缩数据库日志的方法
SQL Server 2008删除或压缩数据库日志的方法2010-09-20 20:15由于数据库日志增长被设置为“无限制”,所以时间一长日志文件必然会很大,一个400G的数据库居然有600G的LOG文件,严重占用了磁盘空间。由于主要是做OLAP,所以数据库本身不会有大变动,所以日志也就没有多少作用了,因此想办法把数据库日志文件收缩到很小或者删除。
网上搜索相关解决方案后,得到的答案丰富多彩,但是真正管用的方案并不多,这里分享一个csdn上找到的方法。这个方法讲述了SQL Server 2005和SQL Server 2008在收缩数据库日志的不同之处,颇有帮助。同时,该方法的效率很高,收缩600G的日志到10M只花了不到30秒。
最后附上代码:
适用于SQL Server 2005的方法
Backup Log DNName WITH no_log
GO
DUMP TRANSACTION DNName WITH no_log
GO
USE DNName
DBCC SHRINKFILE (2)
GO
说明:由于SQL Server 2008对文件和日志管理进行了优化,所以以上语句在SQL2005中可以运行但在SQL2008中已经被取消。
------------------------------
适用于SQL Server 2008的方法
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式
GO
USE DNName
GO
DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY)
GO
USE [master]
GO
ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式
GO
说明:优点:此清除日志所运行消耗的时间短。缺点:不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。
相关推荐
SQL_Server_2008删除或压缩数据库日志的方法.doc
sqlserver压缩数据库日志文件
sql server数据库日志压缩
sql server数据库-备份、压缩、清空日志语句
一步步教你怎样压缩数据库 以及数据库的日志 希望对你有帮助
程序是在delphi6,win2000server,sql2000环境下编译的采用动态生成存储过程来压缩数据库日志,测试过基本没有问题.使用到的控件: 1stclass(做的label和image) dxPack2 (用里面的按钮控件做的按钮)可以用delphi自带的...
SQLServer 数据库压缩语句,主要是日志文件,能压缩到1M大小
程序是在delphi6,win2000server,sql2000环境下编译的采用动态生成存储过程来压缩数据库日志,测试过基本没有问题.使用到的控件: 1stclass(做的label和image) dxPack2 (用里面的按钮控件做的按钮)可以用delphi自带的...
1.SQL SERVER Always On收缩日志文件详细操作; 2.针对收缩日志出现“cannot be shrunk until all secondaries have moved past the point where the log was added ”问题的分析及解决方法;
《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...
SQL Server 2000日志压缩工具, 清除sql server日志,缩小数据文件,可以设置数据库日志文件不增加等
最近服务器执行收缩日志文件大小的job老是报错,小编抽时间把此问题的解决方案整理了一下,特此分享到脚本之家平台,供大家学习
《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...
应当定期进行此操作以免数据库日志过大 1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQLServer–>SQLServer组–>双击打开你的服务器–>双击打开数据库目录–>选择你的...
SQLServer2000数据库的事务日志文件压缩.pdf
《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...
首先在第1章中详细介绍了sql server 2008的架构和配置,然后在接下来的10个章节中深入探讨了sql server 2008数据存储和查询处理等各个方面的内部机制,包括:数据库和数据库文件、表、索引、跟踪、日志记录和恢复、...
最近win2008 r2的服务器比较卡,打开服务器显示也特别慢,sqlserver业务费正常执行,服务器桌面操作也比较卡,经过多方研究发现原来是sqlserver日志文件已经达到了84G导致,这里就为大家分享一下解决方法,需要的...
MS SQL清除日志的命令 如何清除sqlserver 日志? 【手工方式】 设置数据库为简单模式,自动收缩 1打开查询分析器输入命令 backup log databasename with no_log 2.再打开企业管理器--右键你要压缩的数据库--...
将庞大的数据库日志压缩到5-10M左右。