默认情况下,SQL Server 保存 7 个 ErrorLog 文件,名为:
- ErrorLog
- ErrorLog.1
- ErrorLog.2
- ErrorLog.3
- ErrorLog.4
- ErrorLog.5
- ErrorLog.6
在 APACS OS 版本 6.1 中,ErrorLog 文件保存在 c:\Program Files\Microsoft SQL Server\MSSQL$WINCC\LOG 文件夹中。在 APACS OS 版本 7.0 中,ErrorLog 文件保存在 c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG 文件夹中。ErrorLog 文件包含最新信息;ErrorLog.6 文件包含最老的信息。
每次重启动 SQL Server 时,这些日志文件都如下循环:
- 删除 ErrorLog.6 文件中的所有数据,并创建一个新的 ErrorLog 文件。
- 上个 ErrorLog 文件中的所有数据被写入到 ErrorLog.1 文件中。
- 上个 ErrorLog.1 文件中的所有数据被写入到 ErrorLog.2 文件中。
- 上个 ErrorLog.2 文件中的所有数据被写入到 ErrorLog.3 文件中。
- 上个 ErrorLog.3 文件中的所有数据被写入到 ErrorLog.4 文件中。
- 上个 ErrorLog.4 文件中的所有数据被写入到 ErrorLog.5 文件中。
- 上个 ErrorLog.5 文件中的所有数据被写入到 ErrorLog.6 文件中。
如果其中一个 ErrorLog 文件已很大,则可通过运行 sp_cycle_errorlog 存储过程手动循环这些 ErrorLog 文件。注意事项:旧的 ErrorLog 文件中的数据将被覆盖!如果必须保存旧的 ErrorLog 文件中的数据,则可将这些旧的 ErrorLog 文件复制到某个外部存储介质中。
在 APACS OS 版本 6.1 中,可利用 SQL Qry Analyzer Tool 从 SQL Server Enterprise Manager 运行 sp_cycle_errorlog 存储过程。在 APACS OS 版本 7.0 中,可从 SQL Server Management St io 运行 sp_cycle_errorlog 存储过程。
所以需要定期能切换写入error log . 一般可以使用DBCC errorlog命令来操作 。
Exec('DBCC ErrorLog')
或者可以通过以下命令,将sp 放在Job中定期执行。
..........
..........
转载:http://6415083.blog.163.com/blog/static/6660257520113203519353/
在日常SQL Server的维护中,查看 SQL Server 错误日志可以用来确认服务的运行情况:例如服务的启停、备份和还原操作、登录认证情况等等,需要经常性的查看。
使用 SQL Server Management Studio 或文本编辑器都可以查看 SQL Server 错误日志。默认情况下,错误日志位于 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被删除。
生产服务器上的ErrorLog文件有时候会碰到文件很大的情况,尤其将登录认证情况记录到错误日志的情况之下,此时使用SQL Server Management Studio或者文本编辑器查看错误日志查看的时候速度会是个问题,对于这种情况,可以在不重新启动服务器的情况下,通过存储过程sp_cycle_errorlog来生成新的日志文件,并循环错误日志扩展编号,就如同重新启动服务时候一样。除了 Execute sp_cycle_errorlog 之外,也可以使用DBCC ERRORLOG来实现同样的功能。在实际操作中,也可以通过建立一个Job定时去执行该存储过程,这样将日志文件大小控制在合理的范围之内。
SQL Server默认保留7次错误日志文件,在产生新的错误日志的同时,最老的那个日志也被删除了,如果想保留更多次的错误日志,可以通过如下方法来设置(SQL Server 2005):
- 打开 SQL Server Management Studio
- 在“管理”目录下,在SQL Server日志上右键,点击“配置”
- 在弹出的“配置SQL Server错误日志”窗口中,在“限制错误日志文件在回收之前的数目”复选框上打勾,并且将“最大错误日志文件数”设置为希望的数值。这个数值在6到99之间。
除了上述方法之外,也可以通过修改注册表的方式来修改。新建一个注册表项(如果有则修改之):HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/MSSQLServer/NumErrorLogs,默认情况下,并没有这个注册表项,类型选择REG_DWORD,数值设置为希望保留的日志次数。修改注册表项的方法也可以通过以下存储过程来实现:
exec xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software/Microsoft/MSSQLServer/MSSQLServer', N'NumErrorLogs', REG_DWORD, 20
在默认情况下,SQLServer的错误日志位于 Program Files/Microsoft SQL Server/MSSQL.n/MSSQL/LOG/ERRORLOG 和ERRORLOG.n 文件中。
可以通过如下方法来修改该路径:
- 在 SQL Server 配置管理器中,单击“SQL Server 服务”。
- 在右窗格中,右键单击 SQL Server (<实例名>),再单击“属性”。
- 在“高级”选项卡的“启动参数”框中,有以分号 (;) 分隔的参数。其中,有一个以 –e开头的参数,修改该参数后面的路径,就可以将错误日志存放到指定的路径下,修改完成需要重启服务生效。