#tsql #installation #server
Вопрос:
В принципе, я ищу способ получить дату создания экземпляра SQL, используя TSQL, т. Е. Созданную дату для самого сервера. Я ничего не смог найти ни в документах, ни на сайте. Я знаю, что могу прокрутить систему, чтобы найти дату в файловой системе, но подумал, что это может быть способ сделать это так же легко, как я могу для sys.objects. Я подумал, что, возможно, я мог бы использовать CreateDate из таблицы в master или msdb, но, похоже, это дата, когда MS создала их. Я запускаю 2019 год.
Любое предложение было бы полезно. Спасибо.
Комментарии:
1. Запрос
syslogins
.createdate
дляNT AUTHORITYSYSTEM
Ответ №1:
Вот несколько вариантов, которые вы можете использовать
/*********** Retrieve SQL Server Installation Date Time ************/
SELECT
@@SERVERNAME AS Server_Name,
create_date AS SQL_Server_Install_Date
FROM sys.server_principals WITH (NOLOCK)
WHERE name = N'NT AUTHORITYSYSTEM' OR name = N'NT AUTHORITYNETWORK SERVICE';
GO
SELECT
@@SERVERNAME AS [Server Name],
createdate AS SQL_Server_Install_Date
FROM sys.syslogins
WHERE name = N'NT AUTHORITYSYSTEM' OR name = N'NT AUTHORITYNETWORK SERVICE';
GO
SELECT create_date
FROM sys.server_principals
WHERE sid = 0x010100000000000512000000
GO
-->> Check the setupinstallation logs
SELECT createdate
FROM sys.syslogins
WHERE name='sa'
GO
Комментарии:
1. Спасибо @Ronen. Последний на самом деле возвращается с ОЧЕНЬ старой датой, но остальные 3 работают хорошо.
2. Мы вам очень рады
:-)
. Каждое решение имеет некоторые ограничения, и единственное, на что вы действительно можете рассчитывать, — это »Check the setupinstallation logs
«. Остальные параметры основаны на конфигурации вашей службы и предыдущих установках. Примечание: не забудьте закрыть тему, как только вы найдете решение, соответствующее вашим потребностям