如何确定SQL Server 2000上使用的数据库

时间:2010-10-13 15:18:05

标签: sql sql-server sql-server-2000

我有一个SQL Server 2000盒子,里面有几个数据库,其中一些可能已经不再使用了。我想首先将它们脱机,然后将它们全部一起删除。问题是我不知道如何分辨哪些仍然被积极使用(外部来源可能连接也可能不连接,使用它们等)。

有没有办法告诉每个数据库上次活动的时间?我知道SQL Server会保留sys表中某些内容的记录,但我不确定那里存储的是什么。如果在那里找不到我需要的东西,那么我可以设置一些东西来跟踪这一点的用法吗?理想情况下,我希望能够“达到这个时间点”,但“从这一点开始”将比没有好。感谢。

2 个答案:

答案 0 :(得分:2)

尝试启用审核以登录SqlServer。根据使用的用户帐户,您可以查看是否使用了该数据库。 审计可以在这里找到:

EnterpriseManager -> Right click database server -> Properties 
-> Security -> Audit Level -> set to All

这将填写您在/Management/SqlServerLogs下可以看到的日志,并且该日志通常也会保存在此处C:\Program Files\Microsoft SQL Server\MSSQL\log\,因此您可以解析&搜索它。

答案 1 :(得分:0)

据我所知,SQL Server中没有任何内置功能可以为您提供“上次使用”的日期/时间。展望未来,您可以定期运行此类查询来跟踪使用情况。

select db_name(dbid), count(*) 
    from master..sysprocesses 
    group by db_name(dbid)
    order by db_name(dbid)