Mar*_*lli 6 sql-server dmv sql-server-2014
我刚刚创建了一个代理,我需要向运行 sql server 代理的帐户授予对代理的访问权限。它可能是一个域帐户。
如何使用 T-SQL 找到它?
在 SQL Server 2005 和 SQL Server 2008 中,没有记录的方法。因此使用未记录的命令xp_regread
来获取结果
DECLARE @sn NVARCHAR(128);
EXEC master.dbo.xp_regread
'HKEY_LOCAL_MACHINE',
'SYSTEM\CurrentControlSet\services\SQLSERVERAGENT',
'ObjectName',
@sn OUTPUT;
SELECT @sn;
Run Code Online (Sandbox Code Playgroud)
从 SQL Server 2008R2 SP1 开始,我们有一种获取此信息的文档化方法: sys.dm_server_services
here
您可以使用以下查询来查找相同的内容:
SELECT DSS.servicename,
DSS.startup_type_desc,
DSS.status_desc,
DSS.last_startup_time,
DSS.service_account,
DSS.is_clustered,
DSS.cluster_nodename,
DSS.filename,
DSS.startup_type,
DSS.status,
DSS.process_id
FROM sys.dm_server_services AS DSS;
Run Code Online (Sandbox Code Playgroud)