我很难找到正确的备份方式,以便可以恢复到特定的时间点。我可以很好地执行完整备份/恢复,甚至可以恢复最后一个差异备份,但尝试在这两者之间执行任何操作都会导致“由于LSN链中断而无法创建恢复计划”,因此我遗漏了一些东西。
这是我每晚凌晨1点做的事情:
BACKUP DATABASE MyDatabase TO DISK = @BackupPath
BACKUP LOG MyDatabase TO DISK = @BackupPath
然后,每个小时我都会这样做:
BACKUP DATABASE MyDatabase TO DISK = @DIFFERENTIALBackupPath WITH
我有一个生产数据库服务器,它具有SQLServer2008r2。这是一台旧服务器,考虑到我们的负载,我们正在转向更好的硬件配置,现在新的环境是Win server 2012上的集群环境,只需安装一次SQL Server 2012。
我对故障转移集群环境的理解是,在两个节点上都存在相同的sql服务器实例,它们从共享SAN中获取数据。主节点保持活动,而次要节点一直处于空闲状态,直到主节点失败。一旦主节点失败,windows就会将辅助节点作为活动节点。
现在,我希望将2008 r2数据库的备份还原到这个新的sql server 2012环境中。此故障转移群集对此备份还原施加任何限制,还是将是正常的备
我需要确保我在遵守公司要求的同时采用了最佳实践。1.7天的数据备份,当这一天重复时会覆盖。我的命名约定是DBNAME_DAYNAME.BAK,我通过一个动态构建名称的游标实现了这一点。2.事务日志备份每分钟执行一次,并命名为DBNAME_DAYNAME_MINUTEOFDAY.TRN。同样,当周期中的第8天开始时,这些备份将被覆盖。正在使用类似的游标。3.将数据备份复制到网络共享。每次备份完成后,我都会使用CmdExec。4.将日志备份复制到网络共享。我正在使用备份日志到磁盘和镜像到磁盘。
我需要确保我的参数是正确的。
对于步骤1中的数据文件备份,我使用以下参数: WITH NOFORMAT、
使用SQL Server Management Studio还原数据库,但选中了"Take tail-log backup with NORECOVERY“,并且用户没有还原数据库的权限。
因此,T-SQL命令按以下顺序执行(在SQL Server Management Studio中生成):
BACKUP LOG [database]
TO DISK = N'...DatabaseBackup_2016-08-28_14-07-05.bak'
WITH NOFORMAT, NOINIT,
NAME = N'...DatabaseBackup_