首页 文章

在SQL Azure中备份非常慢

提问于
浏览
1

我目前正在将应用程序移植到Azure之前制定SQL数据库备份策略 . 目前,我们使用SQL Server维护任务每15分钟运行一次内部部署数据库备份,保留1小时(因此保留4个本地副本) . 我们还运行24小时备份,并将其推送到Amazon S3 .

现在在Azure中,我到目前为止设法使用以下T-SQL Build 主数据库(到另一个sql server实例)的备份:

CREATE DATABASE targetserver.backupName AS COPY OF sourceserver.sourceName

源数据库大小约为3GB,每月扩展约5-10% . 我遇到的问题是复制过程非常缓慢!我在30分钟前发了一份副本,它还在运行!这意味着采用15分钟的备份计划在Azure中似乎站不住脚 .

所以我想知道我是否可以与其他用户合格一些东西:

  • 3GB备份是否正常需要超过30分钟(并且计数)才能复制到另一个服务器实例?

  • 我应该将备份保存在与源相同的服务器上吗?我非常紧张,因为Azure门户中的几次点击可能会消除大量关键数据!我知道这是一个“黑天鹅”事件,但我觉得在一个服务器实例中运行一切都感觉不容易 .

  • 有没有更快的方法来备份SQL Azure数据库?我已经看了Red-Gate,但是每日增量备份做起来似乎很昂贵 .

对此有任何想法将不胜感激!

我应该补充一点,我很乐意重新考虑我的备份策略,以便更加友好 . 关键是缓解管理员错误,例如:由于笨拙的声明而丢弃了大量重要数据(备份间隔越短越好),24小时备份被推入不同的存储方法,例如: blob容器 .

UPDATE ------

我等了1个小时后重新启动,取消了初始备份请求 . 第二次备份在5分钟内完成 . 我现在回到Red-Gate,看看他们的托管备份解决方案 .

1 回答

  • 1

    复制数据库运行多长时间不仅取决于数据的大小,还取决于当时正在运行的事务数量,因此在您的情况下此选项可能无法运行 . 既然您有备份数据库,您可以通过备份备份并查看需要多长时间来自行测试 .

    您的另一个选择是导出.bacpac文件并将其存储在blob存储中 . 有这个库,但我没有参考手 . 这也是一个便宜得多的选择 . 我很确定这就是Red Gate在他们的服务范围内所做的事情 .

相关问题