2

我在数据库 [SQL Server Server 2005] 上运行了一些“ALTER”脚本,并覆盖了一些存储过程。有什么方法可以撤消更改并恢复我的旧存储过程?

有没有办法从 .LDf 文件中获取执行的脚本?这样我就可以为我的存储过程重新运行我最初的“创建”脚本。

我没有旧存储过程的备份文件。

ps 我根据@Gulzar 的已删除答案备份了数据库,看起来我已经“被冲洗”了。

@Pittsburgh DBA:感谢解决方案,但备份后它似乎不起作用。

道德:在尝试建议的答案之前等待 10 分钟


来自 Gulzar 的更新:我的意思是在尝试任何事情之前进行文件备份(为了安全起见)。不是 SQL Server 备份。

4

4 回答 4

4

第一:暂时不要进行任何备份。

市场上有几种工具可以做这种事情。

你可以试试这个:

ApexSQL 日志

于 2008-10-14T23:31:35.997 回答
2

万一其他人有同样的问题 - 你是否每 X 分钟进行一次事务日志备份?如果是这样,您可以使用 Quest LiteSpeed 的日志阅读器或 Quest Toad for SQL Server 的日志阅读器来读取日志文件备份。它也为日志备份或 ldf 中的任何事务提供撤消/重做脚本。

于 2008-10-19T01:56:21.253 回答
1

之后,考虑使用 ApexSQLScript 定期编写数据库脚本(并存储在版本控制中)。

于 2008-10-14T23:58:39.717 回答
0

你可以!转到 sql server 管理工作室,连接到您的数据库,左键单击您的数据库并转到“任务”。选择还原-> 数据库。然后单击“时间轴”按钮并选择“特定日期”并选择错误前一天。必须关闭所有有权访问您的数据库的程序。它对我有用,我有同样的问题。

于 2013-09-09T13:11:52.117 回答