Sql-Server

登錄名在過去一個月內未使用

  • June 19, 2017

我需要創建一個查詢,該查詢可以獲取上個月未使用的登錄詳細資訊。我嘗試了幾種方法,例如擴展事件和審計跟踪。但我無法獲得上個月未使用的登錄列表,請幫我解決這個問題。

您還可以多次使用 xp_readerrorlog 來插入所有日誌文件。以下是上述答案中提供的程式碼的簡單修改

create table #t (dt datetime, procc varchar(100), txt varchar(8000));
insert into #t exec xp_readerrorlog 0,1,N'Login succeeded for user';
insert into #t exec xp_readerrorlog 0,2,N'Login succeeded for user';
insert into #t exec xp_readerrorlog 0,3,N'Login succeeded for user';

select distinct substring(txt, 27, CHARINDEX('''', substring(txt, 27, 8000)) 
- 1) as login_name
into #t_logged
from #t
where dt between @start_date and @end_date;


select name
from sys.server_principals
where type in ('S', 'U')

except

select login_name
from #t_logged;

引用自:https://dba.stackexchange.com/questions/174950