sql-server - SQL Server 数据库还原卡在 99%

我有一个 SQL Server 2005 .BAK 文件(使用维护计划创建),我正试图将其恢复到 SQL Server 2005 的不同实例中。

无论我是使用 UI 还是 RESTORE DATABASE,恢复过程似乎都停在了 99%。如果我使用 RESTORE VERIFYONLY FROM DISK='mybackup.bak',它会报告我的备份有效。

有趣的是,在我开始恢复过程后,一个 43 GB 的事务日志文件立即出现在我的 MSSQL\DATA 目录中。 .BAK 文件为 60 MB。系统有足够的可用空间用于此恢复。

关于我应该尝试的其他恢复策略有什么建议吗?我将让恢复运行一整夜,看看会发生什么。

谢谢

最佳答案

如果您有一个 43Gb 的事务日志,根据您的磁盘速度,恢复将需要一段时间。这意味着当您备份数据库时,它有一个 43Gb 的日志文件并且是空的。因此,当您恢复时,SQL Server 必须为日志文件分配 43Gb,并且它必须实际将 43Gb 归零,这需要一段时间。

我的建议是等待恢复完成,可能需要几个小时,或者在生产环境中进行事务日志备份,然后将传输日志文件缩小到 100Mb,然后进行备份,然后从中恢复。

IT 了解恢复模型和使用的备份模型非常重要。不要只是在生产环境中安装一个数据库并让它运行,如果你不管理它,你最终会遇到大问题。

https://stackoverflow.com/questions/5150079/

相关文章:

vb6 - 如何枚举计算机上可用的 COM 端口?

sql-server - T-SQL 固定宽度输出

sql - 在 SQL 中将列的子集重置为其默认值?

php - 使用 preg_replace 删除特定字符周围的空格

wordpress - 如何检索当前获取附件的 MIME 类型

database-design - 将单一类型关联到多个类型

ms-access - 通过 Access VBA 代码保存查询

sql - 分段获取 SQL 结果

windows - Perl 中的“打开”语句拆分包含空格的路径 - 如何读取路径中包含空格的文件?

php - 在 Web 服务器环境中的 PHP 中启用进程控制 (PCNTL) 有哪些副作用?