服务器c盘空间不够,先删掉了IIS日志,发现sql数据库居然也占用了几十G的空间,ErrorLog文件特别大,想手动删除,结果还删除不了,文件在 MSSQL C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG 目录下存放这一些日志文件,一共是7个,常常会因为这些日志文件不断增大而导致C盘没有空间,我的这些日志曾经就达到过12G,吓死我了,
sql2005的 error一共有6个,从errorlog,errlog.1一直到errorlog.6貌似是7个。。执行一次EXEC sp_cycle_errorlog就会产生一个新的errorlog,然后把errorlog.6给删掉。就是先进先出(队列类似的情况)这样循环6次 就可以把errorlog都刷新一遍。老的那个就被删掉了。
找了一些办法都不能清除这些日志信息,网上有说用Maintenance Plans( 维护计划 )功能的,但我发现我的维护计划用不了,没办法,只得另寻其他途径。
直接删除吧,又担心有什么后顾之忧!!
最后发现一个很简单好用的方法,分享如下:
sql2005的error一共有7个,从errorlog,errlog.1一直到errorlog.6
要清除这些日志文件的内容,可以在新建查询里执行下面语句:
EXEC sp_cycle_errorlog
每执行一次就会产生一个新的errorlog,首先删除errorlog.6,依次往下删,就是先进先出(队列类似的情况)
这样连续执行7次就可以把errorlog都刷新一遍。老的那些就被删掉了。
最后看了系统的日志,发现这些错误日志是由于一些莫名其妙的主机不断的在连我的服务器,审核不成功产生的。
由于默认情况下,SQL Server 保存 7 个 ErrorLog 文件,名为:
ErrorLog
ErrorLog.1
ErrorLog.2
ErrorLog.3
ErrorLog.4
ErrorLog.5
ErrorLog.6
--清除 SQL Server 错误日志文件 存档
EXEC sp_cycle_errorlog
GO
执行一次EXEC sp_cycle_errorlog就会产生一个新的errorlog,然后把errorlog.6给删掉。就是先进先出(队列类似的情况)这样循环6次就可以把errorlog都刷新一遍。
看了系统的日志,发现这些错误日志是由于有人不停的尝试破解sa密码所造成的。
找到根源后,将sa账户密码设置的复杂点,然后在关闭掉sa用户。这样就万保了。
记得操作前备份!!!!!!
执行一次EXEC sp_cycle_errorlog就会产生一个新的errorlog去覆盖旧errorlog。只要循环7次就可以把errorlog都覆盖一遍。
用EXEC sp_cycle_errorlog来生成errorlog用以限制errorlog大小这招说实话真的很好使!网络上的高人果然数不胜数!佩服佩服。