我需要从SQL Server 2000事务日志文件中恢复已删除的数据。 日志文件是3.3GB。 我尝试了通常的SQL日志拯救,但它一直崩溃outOfMemoryexception。 我也试过在不同的机器上有相同的错误。
我试过ApexSQL恢复,似乎工作,但它是一个试用,所以只有每隔10行显示。 如果我找不到更便宜的解决scheme,我可能别无select,只能掏999.00这个工具。
有任何想法吗?
编辑 – 如果我尝试从备份恢复,然后重播我的日志文件,我可以在同一台服务器上恢复备份到不同的数据库(新)?
删除是什么时候发生的? 你有这个时期的日志备份吗? 你能否将整个数据库恢复到已知的还原点? 你需要在数据库中发生其他交易吗?
如果其他事务已经发生(这有点复杂),将数据库的最后一个完整备份恢复到新位置并按顺序应用事务日志。 在删除数据之前使用STOPAT子句,并使数据库联机。
你现在应该删除你的数据库中的数据。 您现在可以生成插入语句,将缺失的logging插入到实时数据库中。 如果架构复杂(即多个孤立的表),像RedGate的数据比较工具将是有用的。 您可以安装一个完整的function试用版,以便在恢复的数据库和生产之间进行一次性比较。
编辑:是的,使用不同的数据库名称还原数据库,如果使用T-SQL,请使用MOVE选项为数据文件指定不同的物理位置。 在EM中的选项选项卡中,将还原作为文件名进行更改。