Локальное восстановление базы данных SQL Azure Bacpac



Я создал резервную копию BACPAC моей базы данных SQL Azure с помощью опции "экспорт" в консоли управления Azure.



загрузив это на свою машину, я немного застрял на том, как я могу восстановить это на локальном экземпляре SQL Server. Я наткнулся на инструмент DacImportExportCli, но не смог найти пример локального восстановления.



также, если кто-то написал сценарий, который делает это (поэтому его можно запланировать), это было бы потрясающе.

828   6  

6 ответов:

Это можно сделать просто через SQL Server Management Studio 2012

  1. щелкните правой кнопкой мыши Подключение > Базы Данных узел и выбираем "импорт приложения уровня данных..."
  2. выбираем "далее " на этапе введения.
  3. enter image description here
  4. просмотр или подключение к учетной записи хранения, где хранятся резервные копии.

мне нужно было экспортировать базу данных SQL Azure, а затем импортировать ее на локальный сервер SQL 2008 R2 (обратите внимание, что я также использую Visual Studio 2010). Microsoft, конечно, изо всех сил старалась сделать это болезненной задачей, однако я смог сделать это, выполнив следующее:

  1. перейти по этой ссылке http://msdn.microsoft.com/en-us/jj650014 и установите SQL Server Data Tools для Visual Studio 2010

  2. это установит на ваш локальный диск. В моем случае вот где он положил его: C:\Program файлы (x86)\Microsoft SQL Server\110\DAC\bin

  3. перейдите к этому через командную строку или powershell

  4. вы хотите, чтобы выполнить SqlPackage.exe

  5. открыть ссылку, чтобы увидеть список всех параметров для SqlPackage.исполняемый (http://msdn.microsoft.com/en-us/library/hh550080 (v=против 103). aspx)

  6. вот моя командная строка, которую мне нужно было выполнить, чтобы импортировать a .файл bacpac в мой локальный сервер SQL 2008 R2:

    .\SqlPackage.exe /a:Import / sf:C:\mydatabasefile.bacpac / tdn: NorthWind / tsn: BINGBONG

/tdn - Это имя базы данных, в которую вы хотите восстановить файл bacpac. /tsn - это имя вашего SQL сервер.

Вы можете увидеть все эти описания параметра по ссылке из #5.

вы можете восстановить BACPAC с помощью инструментов на стороне клиента. Видео здесь:

http://dacguy.wordpress.com/2011/09/09/importexport-services/

инструменты доступны здесь:

http://sqldacexamples.codeplex.com/documentation

кажется, мои молитвы были услышаны. Redgate запустил свой инструмент резервного копирования SQL Azure бесплатно сегодня -http://www.red-gate.com/products/dba/sql-azure-backup/download

Если вы используете SSMS 2012, это так же просто, как щелкнуть правой кнопкой мыши на папке базы данных под сервером в Обозревателе объектов и выбрать "импорт приложения уровня данных...".

есть один ухаб на дороге, чтобы следить за: по состоянию на 26 марта 2013 года (когда мне нужно было узнать, как это сделать самому), при экспорте .bacpac из Azure, он будет загружен как a .zip-файл, не a .файл bacpac и диалоговое окно файла, которое открывается кнопкой обзор в окне импорт мастер покажет только либо *.bacpac-файл или . в фильтрах файлов, подразумевая это .zip не поддерживается. Однако, если вы измените фильтр, чтобы . выберите загруженный .zip и нажмите кнопку Далее, мастер будет работать нормально.

вот скрипт для восстановления сразу нескольких файлов bacpac: массовое восстановление файлов bacpac local

cd [FOLDERPATH]
$goodlist = dir
cd 'C:\Program Files (x86)\Microsoft SQL Server0\DAC\bin'
foreach($i in $goodlist){ $name = $i.Name; $namer = $i.Name.Substring(0, $i.Name.length - 7); .\SqlPackage.exe /a:Import /sf:[FOLDERPATH]$name /tdn:$namer /tsn:[SERVERNAME] }

Comments

    Ничего не найдено.