SQL 2005 Errolog过大处理方法

Posted sfqas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 2005 Errolog过大处理方法相关的知识,希望对你有一定的参考价值。

1、    背景

1.1          在SQL数据库系列产品中,运行一段时间后的数据库总会生成不小的错误日志,经常会占用不少空间;

2、    原因

2.1          SQL数据库默认情况下,错误日志位于 Program Files/Microsoft SQL Server/MSSQL.n/MSSQL/LOG/ERRORLOG 和ERRORLOG.n 文件中。默认保留有7个 SQL Server 错误日志文件,分别是:ErrorLog,Errorlog.1~Errorlog.6 ,当前的错误日志(文件ErrorLog)没有扩展名。每当启动 SQL Server 实例时,将创建新的错误日志ErrorLog,并将之前的ErrorLog更名为ErrorLog.1,之前的ErrorLog.1更名为ErrorLog.2,依次类推,原先的ErroLog.6被删除。

2.2          生产服务器上的ErrorLog文件有时候会碰到文件很大的情况,尤其将登录认证情况记录到错误日志的情况之下

3、    处理方法

3.1          重新启动服务器,利用 “每当启动 SQL Server 实例时,将创建新的错误日志ErrorLog,并将之前的ErrorLog更名为ErrorLog.1,之前的ErrorLog.1更名为ErrorLog.2,依次类推” 来删除以前的大的日志 ,这样的方法不推荐

3.2          在不重新启动服务器的情况下,通过存储过程sp_cycle_errorlog来生成新的日志文件,并循环错误日志扩展编号,就如同重新启动服务时候一样。除了 Execute sp_cycle_errorlog 之外,也可以使用DBCC ERRORLOG来实现同样的功能。在实际操作中,也可以通过建立一个Job定时去执行该存储过程,这样将日志文件大小控制在合理的范围之内.

以上是关于SQL 2005 Errolog过大处理方法的主要内容,如果未能解决你的问题,请参考以下文章

SQL 2005 事务复制:快照处理期间的行为?

SQL2005 异常处理机制(Begin try Begin Catch)

处理 XML 数据类型(SQL SERVER 2005)

SQL2005体系结构

sql数据库还原,出现媒体簇的结构不正确,SQLServer无法处理此媒体簇的解决方法

Sql事务的并发处理