谁创建了数据库角色?

时间:2014-10-23 15:24:45

标签: sql-server sql-server-2008 sql-server-2005 sql-server-2012

如何找出谁创建了特定的DB角色?

我有一个数据库,具有以下数据库角色(见下图) 但我需要知道谁创建了db_dev角色,因为没有与之关联的变更请求。

也许它只是在错误的服务器中错误地创建的。 (经典) 我想知道是谁创造的?

不要责怪这个人,只是为了找出并询问它。我们这里有一些人在度假。

我该怎么做?

enter image description here

1 个答案:

答案 0 :(得分:0)

我设法通过读取默认曲线来找到它。

下面的

是我用过的脚本。

--===============================================================================================
--To check to see whether a default trace is indeed currently running, execute the following:
--===============================================================================================

SELECT * 
FROM sys.configurations 
WHERE configuration_id = 1568


--===============================================================================================
-- script to read from the default trace:
--===============================================================================================

DECLARE
    @trace_id INT,
    @filename NVARCHAR(4000);  

SELECT @trace_id = id 
    FROM sys.traces 
    WHERE is_default = 1; 
SELECT @filename = CONVERT(NVARCHAR(4000), value) 
    FROM sys.fn_trace_getinfo(@trace_id) 
    WHERE property = 2; 

SELECT HostName, LoginName, DatabaseName, TargetUserName, StartTime, TextData AS [Trace Time] 
    FROM sys.fn_trace_gettable(@filename, DEFAULT)