是否支持备份 SQL Server 数据和日志文件?

是否支持备份 SQL Server 数据和日志文件?

我知道 Microsoft SQL Server 没有任何地方证明它是安全的、正确的、有效的,或者打算备份数据(.mdf) 和 log (.ldf) 文件(*当 SQL Server 运行时)。即您不知道这些文件处于什么状态 - 它们不是您的文件。

一些备份软件声称能够在使用 SQL Server 数据和日志文件时对其进行备份。

别介意它是否(碰巧)起作用 - 这是预期的行为吗?

答案1

是的,如果 (!) 该程序完全集成到 Windows 提供的备份 AP 中,则有效。基本上,它们会告诉 SQL Server 将文件置于一致状态,然后对文件进行快照。术语是 VSS(卷影复制),并且有一个 API。SQL Server 支持它。

答案2

通常,支持 SQL 的程序将使用 VSS 编写器来获取数据库的时间点快照。如果您在上午 11 点开始备份,并且数据是在 11:01 输入的,则这些数据不会包含在备份中。

答案3

使用 SQL 感知备份程序(如 Symantec BE)是完全可以接受的。Symantec BE 不会直接备份 mdf 和 ldf 文件,因此您将在任何 SQL 服务器备份集中都找不到 mdf 或 ldf 文件。

答案4

我不建议尝试备份 SQL Server 正在使用的实际文件。我们发现备份实用程序锁定实际数据文件会导致无响应,并导致以下错误记录到 SQL 错误日志中:

Date Time spid51 Database master: IO is frozen for snapshot 
Date Time spid51 Database master: IO is thawed

请参阅以下内容:

http://support.microsoft.com/kb/903643

http://sqlbie.wordpress.com/2010/08/31/io-is-thawedfrozen-when-using-3rd-party-backup-agents/

与过去的雇主(包括我现在的雇主)类似,他们倾向于通过 SAN 复制使用类似的方法,将数据文件复制到 DR 设施的备份 SAN。

实际恢复测试表明,即使这是数据文件(ldf、mdf 和 ndf)的逐个扇区复制,我们有时也会遇到由于 DR SAN 上未完成的不完整扇区写入而导致的损坏。

相关内容