2013-07-11 5 views
1

Я работаю над инструментом, позволяющим создавать резервные копии и восстановление баз данных SQL Azure между различными локальными средами &.Можете ли вы создать SQL-Azure BACPAC с удаленного приложения C#

У меня есть рабочая версия, где BACPAC создается и напрямую передается на мою локальную машину разработчика.

Но я не смог найти способ создания bacpac и хранить его непосредственно в хранилище Blob с помощью удаленного клиента. Любой из примеров, которые я видел либо

  • поток резервного копирования на локальном компьютере, а затем повторно загрузить его в Blob Storage

ИЛИ

  • Положитесь на том, рабочий роль, развернутая на Azure для обработки процесса

Есть ли способ инициировать функциональность резервного копирования, доступную через Azure Management Por tal (Создать резервное копирование (BACPAC) непосредственно в хранилище Blob) с удаленного клиента?

+0

Пожалуйста, посмотрите здесь: http://sqldacexamples.codeplex.com/ –

ответ

6

Вы должны использовать службу экспорта данных SQL Azure Database Export. Вы можете найти более подробную информацию об этой услуге here.

Для экспорта функциональность, вы можете использовать этот кусок кода:

//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(); 
+0

Спасибо. Я попробую. –

+0

Это сработало отлично. Благодарю. –