背景 我有一个生产 SQL Server 2005 服务器,4 个不同的应用程序连接到该服务器并进行更改。没有外键,在某些情况下也没有主键。不幸的是,将整个事情扔掉并从头开始不是一种选择。所以我的解决方案是开始将每个应用程序迁移到服务层方法,以便只有一个应用程序直接连接到数据库。
但是,在编写该服务层并迁移所有应用程序之前,需要解决一些问题。
因此,与其进行更改并希望它们不会破坏 4 个写得不好的应用程序中的任何一个(无法快速测试所有功能),我的解决方案是开始审核数据库
问题 如何审计 SQL Server 2005 上的每个用户正在访问/更新/调用哪些存储过程、表、列、视图。
我可以找出哪些表正在更新,但我不知道哪些列和哪些用户。我也不知道某些表是否仅通过存储过程/视图访问。
我知道 SQL Server 2008 具有更好的审计功能,但如果我可以在不花钱的情况下做到这一点,那就太好了。也就是说,如果最好的解决方案是升级或购买也是一种选择的软件。