您可以从远程C#应用程序创建SQL Azure BACPAC

时间:2013-07-11 08:21:39

标签: c# azure azure-sql-database azure-storage-blobs bacpac

我正在开发一种工具,允许在各种本地和数据之间备份和恢复SQL Azure数据库。蔚蓝的环境。

我有一个工作版本,其中创建了BACPAC并直接传输到我的本地开发人员机器。

但是我无法找到一种方法来创建bacpac并使用远程客户端将其直接存储在Blob存储中。我见过的任何一个例子

  • 将备份流式传输到本地PC,然后将其重新上传到Blob Storage

OR

  • 依靠在Azure上部署辅助角色来处理进程

是否有办法从远程客户端触发Azure管理门户(直接创建备份(BACPAC)直接向Blob存储提供)的备份功能?

1 个答案:

答案 0 :(得分:6)

您应该使用SQL Azure数据库导入导出服务。 您可以找到有关此服务的更多信息here

对于export functionallity,您可以使用以下代码:

//Set Inputs to the REST Requests in the helper class          
IEHelper.EndPointUri = @"<address of database endpoint according to its location, e.g. https://by1prod-dacsvc.azure.com/DACWebService.svc for DB located in West US>"; 
IEHelper.ServerName = "<database_server_name>.database.windows.net"; 
IEHelper.StorageKey = "<storage_key>"; 
IEHelper.DatabaseName = "<database_name>"; 
IEHelper.UserName = "<database_user_name>"; 
IEHelper.Password = "<database_password>"; 

//Do Export operation 
string exportBlobPath = IEHelper.DoExport(String.Format(@"https://<storage_name>.blob.core.windows.net/bacpac/{0}.bacpac", IEHelper.DatabaseName)); 
ImportExportHelper IEHelper = new ImportExportHelper();