确定 SQL Server 2005 数据库的最后连接源和日期的方法?

确定 SQL Server 2005 数据库的最后连接源和日期的方法?

因此,我的任务是查看这台旧数据库服务器,看看是否有任何数据库正在使用,以便我们将其关闭。我有几个数据库的用途不明,如果我能以某种方式看到日志或连接历史记录,我就可以检查 IP 并查看使用它的应用程序的来源。有什么想法吗?

答案1

SQL2005 默认只记录失败的连接(错误的用户名等),而不记录成功的连接。您可以使用活动监视器来查看任何目前活跃连接,但这并不是追溯性的。

我们通常会将数据库切换到只读/受限访问模式(只有 DBA 可以访问数据库),然后看看谁开始抱怨:)

答案2

这不会向你展示WHO正在查询数据库,但此脚本应显示自上次重新启动服务器以来访问了哪些数据库:

SELECT  db_name(database_id) as DBName,
        max(last_user_seek) as last_seek,
        max(last_user_scan) as last_scan,
        max(last_user_lookup) as last_lookup,
        max(last_user_update) as last_update
FROM sys.dm_db_index_usage_stats
Group By db_name(database_id)
Order by db_name(database_id)

(仅限 SQL 2005+)
运行由 DatabaseID 过滤的 SQL 跟踪来识别实际执行查询的主机名和用户名。

答案3

这篇文章可能会给你指明正确的方向!!

了解哪个数据库使用了多少 RAM

相关内容