下面介绍一下如何查看Windows服务器运行时间的方法
首先需要申明的是,若Windows服务器是数据库服务器,是可以通过查看SQL SERVER启动时间来间接判断Windows服务器上次启动时间的,且SQL SERVER服务是自动启动,而且中途没有重启过SQL SERVER服务是时间是否准确的前提条件。但若Windows服务器是应用服务器,则此方法不使用,具体操作如下:
一:SQL SERVER服务每次开启时,都会新建一个tempdb,因此可以以tempdb的创建时间来判断SQL Server服务的启动时间,--系统数据库tempdb创建的时间。
1: SELECT CREATE_DATE AS StartDateTime
2:
3:FROM sys.databases
4:
5: WHERE NAME='TEMPDB'
二:可以通过系统兼容性视图master..sysprocesses获取。会话Id 为1的是SQL Server启动时创建的 。
1::SELECT CONVERT(VARCHAR(30), LOGIN_TIME,120) AS StartDateTime
2:
3::FROM master..sysprocesses WHERE spid=1
三:通过DMV sys.dm_os_sys_info获取,此动态管理视图中的字段sqlserver_start_time表示SQL Server上次具体的启动时间。
1:SELECT sqlserver_start_time AS StartDateTime
2:
3::FROM sys.dm_os_sys_info
四:可以通过DMV sys.dm_exec_requests获取。会话Id为1的是SQL Server启动时创建的。它的start_time可以判定SQL Server服务启动的时间。
1::SELECT start_time AS StartDateTime
2::FROM sys.dm_exec_requests WHERE session_id = 1
五:可以查看sys.traces目录视图。该目录视图包含当前在系统中运行的跟踪。
1:SELECT start_time AS StartDateTime
2:
3::FROM sys.traces
4:
5:WHERE is_default=1 .