Microsoft SQL Server 2008外部备份

时间:2009-02-18 08:17:38

标签: sql sql-server sql-server-2008 backup

我想将备份从SQL 2008服务器保存到另一个服务器位置。 我们有2台服务器:

  • 部署服务器
  • 文件服务器

问题是部署服务器没有太多空间。我们将数据库备份10天。因此,我们需要将备份存储在外部“文件服务器”上。问题是SQL不允许这样做。 我试图使用一个帐户在两个pc(域帐户)上拥有管理员权限来运行SQL 2008服务,但这仍然不起作用。

对此问题的任何想法。 否则我们必须在机架服务器上安装外部硬盘,这有点傻吗?

修改

我找到了一种让它发挥作用的方法。 您必须在服务器上共享该文件夹。然后授予开发服务器(PC本身)写入权限。这将使SQL Server可以进行外部备份。 不知道它是否安全,我觉得给一个文件夹的计算机权利有点奇怪。

6 个答案:

答案 0 :(得分:4)

您可以使用SqlBackupAndFTP

等第三方工具

答案 1 :(得分:2)

有几种方法可以执行此操作,但这一方法基于我的开源项目SQL Server Compressed Backup。它是用于备份SQL Server数据库的命令行工具,它可以写入运行它的NT用户可以写入的任何位置。只需在具有适当权限的用户运行的计划任务中安排它。

备份到另一台服务器上的共享的示例是:

msbp.exe backup "db(database=model)" "gzip" "local(path=\\server\share\path\model.full.bak.gz)"

所有可用于备份文件的BACKUP命令选项都可用:log,differential,copy_only,checksum等(例如,磁带驱动器选项不可用)。

答案 2 :(得分:1)

您可以使用调度程序在备份开始后的一段时间后使用批处理文件移动备份。

如果我没记错的话,有一个黑客可以让sql服务器备份到远程存储上,但我认为黑客行为不是最佳选择。

当然最好的可能是使用支持代理使用的外部备份工具。它们控制备份何时开始并处理文件移动。

的Sascha

答案 3 :(得分:1)

您可以创建一个漂亮而整洁的小型SQL Server Integration Services(SSIS)包来执行备份,然后将数据移动到备用文件存储中。

有趣的是,SQL Server中的维护计划实际上使用了SSIS组件。这些相同的组件可在Business Intelligence Design Studio(BIDS)中使用。

我希望这很清楚,但如果您需要进一步的帮助,请告诉我。

干杯,约翰

答案 4 :(得分:0)

我体验过旧版本的MSSQL,因此SQL2008中可能会有更好的帮助你。

我们在一些旧服务器上的磁盘空间非常紧张。这些是我们ISP的机器,它们的磁带恢复时间不长 - 24小时并不罕见:(所以我们需要保持一个不错的在线备份历史。

我们在星期天进行完全备份,每隔一晚进行差异备份,每10分钟进行一次TLog备份。

我们在表/索引碎片整理和统计信息更新期间每分钟强制执行Tlog备份 - 这是因为这些是我们运行的TLog密集型任务最多,而且他们之前负责确定常规Tlog文件的大小;自从这次改变以来,我们已经能够将TLog的站立尺寸比以前小了大约60%。

值得关注差异备份的大小 - 如果事实证明,通过星期三备份,您的DIFF备份接近完全备份的大小,您可能每周运行两次完整备份并具有较小的Diff备份第二天或第二天。

删除Full或Diff备份文件(以恢复磁盘空间)时,请确保删除之前的TLog备份。但考虑一下你的恢复路径 - 你希望能够恢复上周日的完整备份和所有Tlog,或者你是否感到高兴的是,对于即时恢复你只能回到昨晚的DIFF备份? (即,为了进一步返回,您只能恢复为FULL / DIFF备份,而不是恢复到时间点)如果您可以在完成DIFF备份后立即删除所有早期Tlog备份。

(显然,无论如何,你需要将备份放到磁带等和复制服务器上,你不必依赖磁带恢复来进行恢复,但是你正在失去粒度随时间恢复)

我们可能会将最后一个Full(或者Last Full加上周一的DIFF)恢复到“临时数据库”以检查某些内容,然后丢弃该数据库,但如果我们真的必须恢复到“上周一15分钟-past-10 AM“我们将不得不从磁带或复制服务器上恢复备份。

我们所有的备份文件都在一个带有Compress set的NTFS目录中。 (您可以直接从SQL2008进行压缩备份,我们拥有的磁盘缺乏的服务器正在运行SQL2000)。我已经读到这是不赞成的,但从来没有看到很好的推理原因,我们从来没有遇到过问题 - 触摸木材!

答案 5 :(得分:0)

某些第三方备份软件允许为网络位置设置特定的用户权限。因此,SQL Server服务帐户所具有的权限并不重要。我建议你尝试EMS SQL备份,它也支持备份压缩'飞行'节省存储空间。