2009-07-28 112 views
2

我正在运行SQL Server 2005标准。我收到了几条警报,需要我做出反应。所以我创建了这些警报,但它们从不出现,因此依赖它们的作业从不运行。SQL Server 2005和Windows事件日志

我发现对于警报,SQL Server需要写入Windows事件日志,但这根本没有发生。每个源都告诉我,通常SQL Server会自动记录,所以我不知道为什么我的实例不会。有没有人知道(取消)激活日志记录到Windows事件日志的选项?

UPDATE:

我看到我的描述是缺少一些基本的信息,所以我会在这里添加此。

我有一个见证的镜像场景。我正在寻找的是ID为1440和1441的事件,这些事件表明一台服务器将其角色从主体改为镜像。这些应该自动写入到Windows事件日志中,但是这不会发生。根本不仅一条SQL Server消息被写入事件日志。

回答

2

我终于找到了答案。有一个启动参数用于告诉SQL Server它不应该将任何内容记录到Windows事件日志中:-n

要设置它,您必须打开SQL Server配置管理器,打开SQL Server实例的属性并转到高级。你会发现一个名为Startup Parameters的字段。这里只需输入(或删除)参数-n并且您的SQL Server将停止写入Windows事件日志。

0

sp_altermessage更改系统消息,因此他们登录(版本/ SP相关)

sp_addmessage用户定义的警报

在你的代码RAISERROR.. WITH LOG(需许可)

否则,有什么警示你在找什么?

+0

我有一个见证的镜像场景。我正在寻找的是ID为1440和1441的事件,这些事件表明一台服务器将其角色从主体改为镜像。 所以我需要由SQL Server生成的消息,而不是任何用户定义的消息。 – bbohac 2009-07-28 12:52:30