查看MS SQL SERVER 错误日志

查看目的:

  错误日志的查看是确保过程已成功完成(例如,备份和恢复操作,批处理命令,或其他脚本和过程)。这可以帮助检测任何当前或潜在的问题,包括自动恢复信息(尤其是如果SQL Server实例已停止并重新启动),内核信息,或其他服务器级别的错误消息。

存放位置:

默认情况下, sql error log的位置(SQL SERVER 2005)在:

%PROGRAMFILES%\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG and ERRORLOG.N(其中的N表示数字)

补充(转自潇湘隐者,文章链接见文末):

  


版本


路径


SQL SERVER 2005


Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG


SQL SERVER 2008


Program Files\Microsoft SQL Server\MSSQL10.实例名\MSSQL\LOG


SQL SERVER 2008 R2


Program Files\Microsoft SQL Server\MSSQL10_50.实例名\MSSQL\LOG

SQL SERVER 2005,默认情况下,错误日志位于 Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG 和 ERRORLOG.n 文件中。其中MSSQL.n的区分为:

MSSQL.1:SQLSERVER

MSSQL.2:SSAS

MSSQL.3:SQLExpress

MSSQL.4:SSRS

所以,一般情况下,你只需要关注MSSSQL.1目录下的日志文件

打开这个文件夹我们会看到7个ERRORLOG文件,其中有六个分别以1,2,……,6作为后缀,没有后缀的那个表示当前的错误日志。

每当数据库实例重启时,便会创建一个新的ERRORLOG,SQL Server会保留之前的六个日志, 并且给予最近的备份日志以后缀名.1, 第二个最近的给予后缀名.2, 以此类推。

   若想手工进行错误日志的切换可使用:sp_cycle_errorlog命令,它可以关闭当前的错误日志,并进行顺序切换,1变2,2变3,删除最后一个,

这个命令可以代替通过重启来切换错误日志,

   也可以使用DBCC ERRORLOG来实现同样的功能。在实际操作中,也可以通过建立一个Job定时去执行该存储过程,这样将日志文件大小控制在合理的范围之内。

查看方式:

可通过SQL Server Management Studio或者任何的文本编辑器来查看SQL Error Log

同时,如果只想查看最近的一个SQL Error Log, 并且还不清楚路径的情况下, 可以使用下面的存储过程.

sp_readerrorlog

xp_readerrorlog

这两个Stored Procedure会带四个参数:

  1. Value of error log file you want to read: 0 = current, 1 = Archive #1, 2 = Archive #2, etc...
  2. Log file type: 1 or NULL = error log, 2 = SQL Agent log
  3. Search string 1: String one you want to search for
  4. Search string 2: String two you want to search for to further refine the results

  例如:

    返回第六个archive了的error log的所有行.

EXEC sp_readerrorlog 6

    返回第六个Error log中的所有带有2005和exec的所有行.

EXEC sp_readerrorlog 6, 1, ‘2005‘, ‘exec‘

    由于 默认Management studio显示结果的长度为256个字符,可能不能查看所有信息,可通过选项进行修改 :

  Tools->Options->Query Results->SQL Server->Results to Text-> Maximum nunber of characters displayed in each column

写完这篇博客又发现有位大师写的(很全)

  

http://www.cnblogs.com/kerrycode/archive/2013/05/28/3104214.html

时间: 2024-08-04 23:32:37

查看MS SQL SERVER 错误日志的相关文章

sql server 错误日志errorlog

一 .概述 SQL Server 将某些系统事件和用户定义事件记录到 SQL Server 错误日志和 Microsoft Windows 应用程序日志中. 这两种日志都会自动给所有记录事件加上时间戳. 使用 SQL Server 错误日志中的信息可以解决SQL Server的相关问题. 查看 SQL Server 错误日志可以确保进程(例如,备份和还原操作.批处理命令或其他脚本和进程)成功完成. 此功能可用于帮助检测任何当前或潜在的问题领域,包括自动恢复消息(尤其是在 SQL Server 实

系统断定检查已失败。有关详细信息,请查看 SQL Server 错误日志

[1]报错信息 运行删除时报错 操作的删除语句: IF OBJECT_ID('tempdb..#temp_Robot') IS NOT NULL DROP TABLE #temp_Robot CREATE TABLE #temp_Robot(UserID INT NOT NULL PRIMARY KEY) select * from #temp_robot INSERT INTO #temp_Robot SELECT UserID FROM Db_Tank..Sys_Users_Order WH

SQL Server自动化运维系列——监控磁盘剩余空间及SQL Server错误日志(Power Shell)

原文:SQL Server自动化运维系列--监控磁盘剩余空间及SQL Server错误日志(Power Shell) 需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 在所有的自检流程中最基础的一个就是磁盘剩余空间检测.作为一个高效的DBA不可能每天都要上生产机上查看磁盘剩余或者直到磁盘无剩余空间报错后才采取扩容措施. 当然,作为微软的服务器有着自己的监控软件:SCCM(System Center

MS SQL 监控错误日志的告警信息

SQL Server的错误消息(Error Message)按照消息的严重级别一共划分25个等级,级别越高,表示严重性也越高.但是如果你统计sys.messages,你会发现,实际上只有16(SQL SERVER 2008/2012)或17个(SQL SERVER 2005)个级别.猜测应该是一些留作扩展用,一些留作用户自定义错误消息的级别. sys.messages中有个字段is_event_logged,取值为1时表示出现错误时将消息记入事件日志. 对于 message_id 中的所有消息语

[AlwaysOn Availability Groups]SQL Server错误日志(AG)

SQL Server错误日志(AG) SQL Server错误日志会记录影响AG的时间,比如: 1.和Windows故障转移集群交互 2.可用副本的状态 3.可用数据的状态 4.AG endpoint的状态 5.AG Listener的状态 6.SQL Server resource DLL和SQL Server实例的租用状态 7.AG的错误事件 出现以下状态就需要检查错误日志: 1.无法连接到可用性数据库 2.非预料的AG故障转移 3.AG的Resolving状态不可预期 4.AG在不其确定的

清理ms sql server 大日志文件数据

1.手动分离数据库: 2.手动删除日志文件: 3.重新生成日志文件: CREATE DATABASE FMIS0 ON (FILENAME = 'E:\FMIS0_DATA\FMIS0-Date') FOR ATTACH_REBUILD_LOG ;GO 清理ms sql server 大日志文件数据

SQL Server代理(5/12):理解SQL代理错误日志

SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的前几篇文章所见,SQL Server代理是由一系列的作业步骤组成,每个步骤是不同类型将要进行的工作.如果你在第4篇所见,SQL Server代理也提供使用数据库邮件发送提醒的能力.如果出现问题,不管怎样, 你必须去查看下数据库邮件错误日志.在这篇文章里,你会学到如何理解和查看SQL Server错误日志的所有相关知识.你会

sql server 跟踪日志

1,当SQL Server错误日志很大时,手工运行:  exec sp_cycle_errorlog 系统存储过程,即可使用新的日志文件 sqlserver系统自动调用 exec sp_cycle_errorlog 系统存储过程,该存储过程会关闭当前的错误日志文件,并循环错误日志扩展编号来循环使用错误日志文件,而不必重新启动 SQL Server实例 2,跟踪标志 -- 下面示例是记录死锁,跟踪标志1222 或1204, 脚本如下所示: --指定打开当前会话的跟踪标志1222 或1204 DBC

SQL Server:错误处理及事务控制

目录: 解读错误信息 RAISERROR THROW 实例 使用 @@ERROR 使用 XACT_ABORT 使用TRY/CATCH 现实中的事务语句 删除 更新 银行取钱 解读错误信息 Msg 547, Level 16, State 0, Line 11 The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Products_Categories". The conflict occurred in