由于我已经知道如何在 SQL Server 中获取当前服务器的 CPU 速度,并且我可以找出SQL Server 服务上次启动的时间以及当前服务器上的总 RAM 内存
现在我想知道当前服务器最后一次重新启动是什么时候。
这很有用,因为我们对 SQL Server 实例进行了大量修补。
首先我从这个脚本开始 - 但我有一些问题:
declare @sql varchar(1008)
set @sql = 'powershell.exe -command get-eventlog System ^| where-object {$_.EventID -eq "6005"} ^| sort -desc TimeGenerated'
EXEC xp_cmdshell @sql
但后来我找到了一个更好的方法:
declare @sql varchar(1008)
set @sql = 'powershell.exe -command Get-CimInstance -ClassName win32_operatingsystem ^| select csname, lastbootuptime'
EXEC xp_cmdshell @sql
两者一起运行,我得到以下结果:
问题:有没有更简单的方法来获取 SQL Server 中的上次重启时间?
我将不得不进行字符串操作,我真正想要的是下面的黄色部分,转换为datatime2(3)
我可以读取和转换的任何其他 SQL Server 数据类型,datatime2(3)
或者datetime
可以。