我正在使用这个脚本为我的数据库创建一个差异备份:
BACKUP LOG myDatabase TO DISK = 'myDatabaseBackup.dif'
但令我惊讶的是,即使我在数据库中插入更多信息或创建新表,生成的文件也不会改变大小。如果我将更多的数据添加到我的数据库中,我希望这个大小会改变,因为完整的备份大小会发生变化。
完全备份脚本:
BACKUP LOG myDatabase TO DISK = 'myDatabaseBackup.bak'
我手动运行上述脚本(每小时一次),因为我使用的是Server,显然它没有维护计划功能。
这是我在做的事,
在凌晨1点进行完整的文件备份
每15分钟进行一次差异文件备份
我们将所有数据传送到其他位置,并恢复所有数据。
所以现在从minutes数据库到目标数据库,每隔15分钟,它就会在其他节点上远程复制。现在我们有了完整的文件,还需要备份事务日志吗?我们愿意牺牲最后15分钟的数据,以防发生灾难,因为这是我们能够远程处理的最好的数据。
因为即使有任何故障发生,最后15分钟的数据在硬件故障事件发生时也永远无法恢复,而启动所有数据需要超过一天的时间,而其他服务器则可以在那里开始接管并继续工作。
所以理想的情况是,想象一下,
1.00 AM full file backup transfer
我有一个数据库( Server 2014),它被设置为执行定期的、完整的和更频繁的差异备份;如果迁移失败,我需要迁移该数据库并还原它。为了防止任何数据丢失,我将在尝试迁移数据库之前备份它。
我知道我不应该做一个完整的备份,因为它会影响后续的差异。如果我只做一个备份就会被阻止。但是,如果我只使用副本备份进行还原,那么随后的差异会起作用并恢复吗?我对一个较小的数据库做了一个实验,我注意到,在恢复副本时,只有备份更改了DatabaseBackupLSN,但我仍然能够执行差异,并且还能够使用它们来恢复数据库(将差异与预先采取的完整备份相结合)。然而,我还没有发现任何证实这在所有情况下都有效的证据。
提
我在本地环境中使用SQL Server 2012。事实上,它正在我的Windows7机器上运行。我的问题如下:我收到SQL数据库的每日备份。现在,我只是每天通过删除现有的数据库来恢复整个数据库。此恢复任务需要相当长的时间才能完成。我对恢复过程的理解是,它会用新的备份覆盖以前的数据库。SQL Server 2012是否可以使用新备份中发生的任何更改来修改现有数据库?我的意思是,将以前的数据库与更新后的数据库进行比较,并在需要的地方进行必要的更改。