欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MS SQL 需要定期清理日志文件

程序员文章站 2022-06-05 17:40:18
...

前言碎语 问题现象 这几天有台数据库服务器一天会收到8封左右的告警邮件,大致内容如下: DATE/ TIME : 2013 - 8 - 4 9 : 19 : 47 DESCRIPTION : A user request from the session with SPID 194 generated a fatal exception. SQL Server is terminating th

前言碎语

问题现象

这几天有台数据库服务器一天会收到8封左右的告警邮件,大致内容如下:

DATE/TIME: 2013-8-4 9:19:47 DESCRIPTION: A user request from the session with SPID 194 generated a fatal exception. SQL Server is terminating this session. Contact Product Support Services with the dump produced in the log directory. COMMENT: (None) JOB RUN: (None)

View Code

通过查看错误日志记录,网站空间,查找具体原因时,香港虚拟主机,需要找到具体日志文件,香港服务器,例如“C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\SQLDump5328.txt”

结果我在C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\下,发现有大量2011、2012年的生成的SQLDump.txt, SQLDump.log , SQLDump.mdmp文件,尤其是后缀为mdmp的文件,大小一般3M左右,结果我删除了大量日期为2011年,2012年生成的SQLDump文件后,总共释放了9GB多的空间,暴汗啊,也就是说日积月累,这类文件你不搭理的话,会由量变到质变,达到一个惊人的量。

MS SQL 需要定期清理日志文件

解决方案

由于近期生成的的这类日志文件是有价值的,有助于你定位错误,所以最好不要删除,这类日志文件我建议一般保留一个星期的周期,超过一个星期的这类日志文件,可以通过下面一些方案处理:

1: 定期手工检查,删除这些日志文件。这是下下策,谁能保证你不会忘记这事? 人工成本很贵的!

2: 写一个dos的批处理文件,然后通过Tash Scheduler定期执行清理

3: 写一个dos的批处理文件,在SQLAgent 调用 CMDEXEC 完成批处理作业

4:通过powershell脚本来处理。