目前我每天都在生成SQL脚本以备份SQL Azure数据库。我需要使用一些免费软件自动化这个过程。我怎样才能做到这一点?
注意: - 我需要以SQL脚本的形式将备份带到某个本地计算机。
答案 0 :(得分:18)
选项1:运行一些代码/脚本来备份数据库
您可以使用SQLCMD实用程序运行SQL。
http://msdn.microsoft.com/en-us/library/ms162773.aspx
要安排此操作,只需使用Windows任务计划程序。
http://msdn.microsoft.com/en-us/library/bb756979.aspx
选项2:使用Azure数据同步
使本地数据库与SQL Azure数据库保持同步,就像持续备份一样。
http://msdn.microsoft.com/en-us/library/windowsazure/hh456371.aspx
选项3:使用BacPac
Azure中有一个API可用于将数据库备份为BACPAC格式。
http://msdn.microsoft.com/en-us/library/windowsazure/hh335292.aspx
然后,RedGate工具允许您还原到本地SQL Server。
http://www.red-gate.com/products/dba/sql-azure-backup/
<强> 修改 强>
我已经创建了一个命令行工具,它将创建数据库的副本,并使用Azure Management API将其备份到BacPac:
答案 1 :(得分:2)
您可以尝试RedGate Azure Sql备份http://www.red-gate.com/products/dba/sql-azure-backup/
也可以使用任务计划程序安排。
我已经写了一些关于如何做到这一点的想法: http://anttitech.wordpress.com/2011/11/06/azure-sql-backup-and-restore-scenarios-using-bacpac-exportimport/
答案 2 :(得分:0)
SQL Azure数据库不支持SQL Server代理或作业。您可以, 但是,在您的内部部署SQL Server上运行SQL Server代理 连接到SQL Azure数据库。
来源:http://msdn.microsoft.com/en-us/library/windowsazure/ee336245.aspx
SQL Server代理是执行的Microsoft Windows服务 计划的管理任务,称为作业...例如, 如果你想在每个工作日后备份所有公司服务器 小时,您可以自动执行此任务。安排备份运行 周一至周五22:00
答案 3 :(得分:0)
创建数据库的云端备份(以获得一致的快照),然后使用Data-Tier Application Framework(DACFx)客户端工具将快照复制到本地计算机,如{{3 }}
答案 4 :(得分:0)
我遇到了一个免费工具,可以备份SQL Azure数据库。备份可以存储在本地或blob上。您还可以使用其内置调度程序计划备份操作,或使用Windows计划程序和提供的命令行实用程序。