我们使用 Ola Hallengren 的DatabaseBackup存储过程将 SQL Server 2012 实例上的 SharePoint 数据库负载备份到 Azure blob 存储中。我们已经这样做了很长一段时间,没有任何问题。然而,在过去的 6 周里,我们DIFFs被随机提升FULL,我们无法找出原因。
这是代理步骤的输出
Run Code Online (Sandbox Code Playgroud)BACKUP DATABASE [Database] TO URL = N'https://strorgage.blob.core.windows.net/server/instance/Database/2020/11/diff/Database_FULL_20201105_200000.bak' WITH NO_CHECKSUM, COMPRESSION, CREDENTIAL = N'*storeageaccountname*'
如果您查看生成的 URL,您会注意到该过程存储在 DIFF 目录中,但创建了一个完整的备份文件。
https://strorgage.blob.core.windows.net/server/instance/Database/2020/11/diff/Database_FULL_20201105_200000.bak
--^ --^
Run Code Online (Sandbox Code Playgroud)
DatabaseBackup (Ola proc) 是从 2019-06-14 开始的,所以它需要升级才能公平,但它已经运行了超过 18 个月。
我们不直接调用 Ola 代码,因为我们有一个构建 Azure 虚拟路径名的小包装程序,但本质上这就是我们调用 Ola 代码的方式。
这是一个问题,因为某些未知原因 DIFF 备份被提升为 FULL,这会导致每天 PB 级而不是 GB 级的 Azure blob 备份。
EXECUTE dbo.DatabaseBackup
@Database = @DatabaseName,
@URL = @BackupPath,
@Credential = @StorageAccount,
@BackupType …Run Code Online (Sandbox Code Playgroud)