LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

SQL Server 日志文件过大预防及解决方法

admin
2011年3月14日 15:25 本文热度 2858
事务日志文件(Transaction Log File)是用来记录数据库更新情况的文件,扩展名为LDF。 在 SQL Server 2000 中,如果设置了自动增长功能,事务日志文件将会自动扩展。一般情况下,在能够容纳两次事务日志截断之间发生的最大数量的事务时,事务日志的大小是稳定的,事务日志截断由检查点或者事务日志备份触发。然而,在某些情况下,事务日志可能会变得非常大,以致用尽空间或变满。通常,在事务日志文件占尽可用磁盘空间且不能再扩展时,您将收到如下错误消息:

 引用内容
Error:9002, Severity:17, State:2
The log file for database ’%.*ls’ is full.

除了出现此错误消息之外,SQL Server 还可能因为缺少事务日志扩展空间而将数据库标记为 SUSPECT。有关如何从此情形中恢复的其他信息,请参见 SQL Server 联机帮助中的“磁盘空间不足”主题。

另外,事务日志扩展可能导致下列情形:

·非常大的事务日志文件。
·事务可能会失败并可能开始回滚。
·事务可能会用很长时间才能完成。
·可能发生性能问题。
·可能发生阻塞现象。

原因

事务日志扩展可能由于以下原因或情形而发生:

·未提交的事务
·非常大的事务
·操作:DBCC DBREINDEX 和 Create INDEX
·在从事务日志备份还原时  
·客户端应用程序不处理所有结果  
·查询在事务日志完成扩展之前超时,您收到假的“Log Full”错误消息  
·未复制的事务

解决方法

方法一:清空日志

1) 打开查询分析器,输入命令 BACKUP LOG 数据库名 WITH NO_LOG(或者DUMP TRANSACTION 数据库名 WITH NO_LOG )
2) 再打开企业管理器→右键你要压缩的数据库→所有任务→收缩数据库→收缩文件→选择日志文件→在收缩操作里选择收缩文件至M,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。

方法二:生成新的日志文件

1) 分离数据库
2) 重命名/删除LOG文件
3) 附加数据库(重新生成日志文件)

此法生成新的LOG,大小只有500多K。这种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失,建议使用第一种方法。

如果以后不想要它变大,SQL Server 2000下使用:

在数据库上点右键→属性→选项→故障恢复→简单模型

或用SQL语句:

alter database 数据库名 set recovery simple

该文章在 2011/3/14 15:26:00 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved