温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SQL server清除错误日志的方法

发布时间:2020-08-11 19:46:56 来源:网络 阅读:991 作者:NewFate1 栏目:关系型数据库

 发现SQL SERVER 2012的数据库无法访问,一直报错。排查原因,发现数据库硬盘没有一点空间了,SQL SERVER有一个错误日志的容量将近128G。在数据库运行过程中,不能直接通过文件剪贴的方式把这个SQL SERVER 错误日志文件直接移动到另外一个硬盘上,因为错误日志被系统进程占用着,并不能通过这个暴力方式进行。必须通过SQL SERVER维护命令进行操作,清除了128G的错误日志文件,具体过程如下:

    由于默认情况下,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都刷新一遍。

    当查询窗口中,出现以下错误信息时:

    消息 17049,级别 16,状态 1,过程 sp_cycle_errorlog,第 9 行
   由于出现操作系统错误 '5(拒绝访问。)',无法将错误日志文件从 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG.5' 循环到 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG.6'。SQL Server 外部的进程可能会阻止 SQL Server 读取这些文件。因此,错误日志条目可能已丢失,并且或许不可能查看某些 SQL Server 错误日志。请确保任何其他进程都未将该文件锁定为只写访问。"
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

    手工删除那个90G的错误日志文件即可。       

     通过本次的经历,适当掌握一些SQL SERVER维护命令在实际工作上也非常有必要的,而且相对于ORACEL数据库,SQL SERVER的维护要相对简单一些。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI