services.msc
or (via Powershell)...
Get-Service | Out-String -Stream | Select-String -pattern "SQL"
SELECT sqlserver_start_time
FROM sys.dm_os_sys_info;
or
SELECT create_date AS SQLServerStartTime
FROM sys.databases
WHERE name = 'tempdb';
eventvwr
Windows Logs - System - Filter Current Log and type 1074 as the event ID.
If you double click the restart event you are interested in you should see the userid of the person who initiated the restart in the event properties window.or (via Powershell)...
Get-WinEvent -ComputerName localhost -FilterHashTable @{logname="System";id="1074"} -MaxEvents 10
Get-WinEvent -ComputerName localhost -FilterHashtable @{logname = 'Application'; id = 17147} -MaxEvents 1
Get-WinEvent -ComputerName localhost -FilterHashtable @{logname = 'Application'; id = 17148} -MaxEvents 1
Get-WinEvent -ComputerName localhost -FilterHashtable @{logname = 'System'; id = 7036} -MaxEvents 2000 | Out-String -Stream | Select-String -pattern "SQL"