我们在 Stack Exchange 上使用 NetBackup,我正在努力修改我们的备份策略以提高效率。
目前,我们使用 SQL 2008 R2,并让 SQL 运行维护计划以将数据备份到 .bak 文件。写入该文件后,我们便会备份存储 .bak 文件的目录。
我们不使用 NetBackup 的 SQL Agent,因为我们将 .bak 文件用于简单备份以外的其他用途。
我正在考虑制定每周/差异/累计轮换的计划,但考虑到目录中会有大型文件,并且每天都会保证更新,而且我们的系统会自动淘汰超过一定天数的备份,所以我认为标准的“办公室文件服务器”场景可能不如其他方法高效。
有没有“最有效”的方法来处理这个问题?
答案1
我对 SQL Server 备份的经验很少,因此对本文持保留态度,并研究了各种备份技术的 SQL Server 代理(巴库拉声称有一个)然后再尝试下面我这个不成熟的计划。
我对数据库备份的解决方案非常特定于 PostgreSQL:我镜像到从属服务器,然后在备份时间到来时关闭该从属服务器,让 Bacula 备份数据库目录,然后重新启动从属服务器,以便它能够赶上复制。
这具有快速恢复的优势,并且在备份大小方面也相当妥协(只备份更改的表备份文件,但备份过程会抓取所有的表,而不仅仅是增量)。
类似的东西可能对你有用。第一次刷机时我建议:
- 设置从属服务器
- 在远程站点设置一台机器,运行同步守护进程到 rsync。
- 每天晚上备份时关闭从属服务器并将数据库文件 rsync 到远程站点,然后重新启动从属服务器并让其赶上复制。
这与我正在做的设置非常相似,不同之处在于,通过直接rsync
“ng”您的数据,您可以利用 rsync 的块级扫描(并且希望通过网络传输的数据比我抓取完整的表支持文件要少得多)。