在我的SQL Server 2005数据库中的几个表中,我的所有数据都已被删除。反正有没有在SQL Server中记录过去一天运行的所有语句?我试图找出是否有人在意外中这样做,我的网络应用程序中存在漏洞,或者实际数据库已被泄露。
答案 0 :(得分:3)
您正在寻找交易记录。根据设置的方式和设置,您将能够看到运行的内容。在http://www.databasedesign-resource.com/sql-server-transaction-log.html处有一些信息。鉴于此,我相信你也可以谷歌更好的资源。
答案 1 :(得分:3)
您也可以尝试运行DBCC LOG命令(数据库,3)。它将输出事务日志中的数据。
答案 2 :(得分:2)
请参阅以下内容,您可以通过几个程序阅读日志。
来自Red Gate is called SQL Rescue的那个并且看起来很不错。
答案 3 :(得分:2)
答案 4 :(得分:1)
您可以购买可以将事务日志备份转换为运行的实际语句的应用程序。您可能能够找到其中一些的试用版,不幸的是我不能推荐任何具体的版本。
答案 5 :(得分:1)
要记住的其他事项:如果黑客获得了足够的访问权来清理某些表格,那么他们很有可能获得足够的访问权限来同时使用您的日志文件。
答案 6 :(得分:1)
在SQL Server中创建事务日志备份,下载适用于SQL Server的TOAD试用版,您可以在其中导入Transactionlog备份。
如果您需要,还可以创建DELETED记录的INSERT脚本。但我不知道TOAD试用版是否有任何限制。