如何将 SQL trn 文件转换为 bak 文件?

时间:2021-06-21 06:30:36

标签: sql sql-server

SQL 将我的数据库备份到许多 .trn 文件(在备份文件夹中)。

问题是 Azure Data Studio 无法从 .trn 文件还原数据库。它仅适用于 .bak 文件。

有没有办法将 .trn 转换为 .bak(单个文件)?

1 个答案:

答案 0 :(得分:3)

您需要一个数据库备份文件(通常为 bak 扩展名)来配合事务日志备份文件(通常为 trn 扩展名)。单独的事务日志备份无法恢复。

您可以在 documentation on transaction log backups 中阅读尽可能多的内容:

<块引用>

至少,您必须先创建至少一个完整备份,然后才能创建任何日志备份。之后,可以随时备份事务日志,除非日志已经在备份。

Restore a Transaction Log Backup

<块引用>

备份必须按照它们的创建顺序进行恢复。在还原特定事务日志备份之前,必须先还原以下先前的备份,而不回滚未提交的事务,即 WITH NORECOVERY:

  • 在特定事务日志备份之前进行的完整数据库备份和上次差异备份(如果有)。在创建最新的完整或差异数据库备份之前,数据库必须使用完整恢复模式或大容量日志恢复模式。
  • 在完整数据库备份或差异备份(如果您还原)之后和特定事务日志备份之前进行的所有事务日志备份。日志备份必须按照它们的创建顺序应用,日志链中没有任何间隙。

如果您拥有的是一个数据库备份文件和多个事务日志备份文件,而您确实只需要一个备份文件,则必须将其还原到可以接受事务日志备份文件的位置(例如本地,或在您的编程环境中)。然后从恢复的数据库中进行数据库备份,然后您可以将其用作单个备份文件。

相关问题