我们在Stack Exchange上使用NetBackup,我正在努力改进我们的备份策略以提高效率.
目前,我们使用sql 2008 R2并使用sql运行维护计划将数据备份到.bak文件.一旦写入该文件,我们就会备份存储.bak文件的目录.
我们不使用sql Agent for NetBackup,因为我们将.bak文件用于除简单备份之外的其他事情.
我正在考虑做一个Weekly / Diff / Cume轮换的时间表,但考虑到目录将拥有每天保证新的大文件这一事实,并且考虑到我们的系统会自动老化超过特定天数的备份,我认为标准的“office fileserver”场景可能效率低于其他方法.
是否有“最有效”的方法来处理这个问题?
解决方法
我对sql Server备份的经验很少,所以在下面尝试我的半生不熟的方案之前,先考虑一下所有这些,并研究各种备份技术的sql Server代理(
Bacula声称有一个).
我对数据库备份的解决方案非常特定于Postgresql:我镜像到一个从属设备,然后当备份时间到来时我关闭了该从属设备,让Bacula备份数据库目录,并重新启动从设备以便它可以赶上复制.
这具有快速恢复和对备份大小的公平折衷的优点(仅备份已更改的表备份文件,但备份过程确实抓取整个表,而不仅仅是delta).
类似的东西可能适用于您的情况.在第一次刷我建议:
>设置从属服务器
>在运行rsync守护程序到rsync的远程站点上设置计算机.
>每天晚上在备份时关闭slave并将数据库文件rsync到远程站点,然后重新启动slave并让它赶上复制.
这是一个非常类似于我正在做的设置,除了通过直接rsync’ng您的数据,您可以利用rsync的块级扫描(并希望通过线路按比例减少数据,而不是抓住整个表 – 支持文件).