Dan*_*vey 11 sql-server extended-events sql-server-2016
我的其中一台 SQL Server 2016 Standard 服务器出现问题。我有 8 台生产服务器,这是唯一一台在日志中没有任何痕迹的情况下随机崩溃的服务器。
我在其上启用了 system_health。我注意到我在系统健康女巫中有一行是“sql_exit_invoked”。
我正在尝试查找有关该行的更多信息。这是什么意思?我在互联网上找到的唯一信息是它在调用 SQLExit() 时发生,并且它只从 SQL 2012 开始记录。(链接在 msdn 网站上可用)
所以我的问题是:我应该担心在我的日志中看到这个吗?我只在我有问题的服务器上发现了这一点,而在其他 7 台服务器上都没有。(都是SQL Server 2016标准版)
有人可以给我更多关于这方面的信息吗?
扩展事件的记录很差。
调试通道扩展事件的记录更差。
根据我的测试,您需要使用这些事件条目中的“shutdown_option”值作为下一步查找位置的线索。以下是我在有限测试中的含义:
ORDERLY_SHUTDOWN
NICE_SHUTDOWN- 使用SHUTDOWN;T-SQL 命令停止服务FAST_SHUTDOWN- 使用SHUTDOWN WITH NOWAIT;T-SQL 命令停止服务请注意,我还尝试了以下操作,但它们没有在扩展事件会话中注册任何内容:
我无法SHUTDOWN_NOT_SET触发事件的版本,因此这仍然是个谜。
在您的屏幕截图中,我可以看到 ORDERLY_SHUTDOWN 是您方案中的选项。在这种情况下,由于这似乎意味着服务或 Windows PC 的干净关闭,我会查看 Windows 事件查看器“系统”日志并查看机器重新启动的原因,或者哪个服务/组件发出 SHUTDOWN 命令到 SQL Server 服务。
祝你好运!