我使用Azure管理控制台的“导出”选项创建了一个Azure SQL数据库的BACPAC备份。
我已将其下载到本地计算机,但不确定如何将其还原到本地SQL Server实例中。我找到了DacImportExportCli工具,但找不到本地还原的示例。
如果有人编写了一个可以定时执行此操作的脚本,那就太棒了。
我使用Azure管理控制台的“导出”选项创建了一个Azure SQL数据库的BACPAC备份。
我已将其下载到本地计算机,但不确定如何将其还原到本地SQL Server实例中。我找到了DacImportExportCli工具,但找不到本地还原的示例。
如果有人编写了一个可以定时执行此操作的脚本,那就太棒了。
这可以通过 SQL Server Management Studio 2012 简单完成。
我需要导出一个 SQL Azure 数据库,然后将其导入到本地的 SQL 2008 R2 服务器(注意,我还在使用 Visual Studio 2010)。微软努力使这成为一项痛苦的任务,但是,我能够通过以下步骤完成:
转到此链接http://msdn.microsoft.com/en-us/jj650014并安装Visual Studio 2010 的 SQL Server 数据工具
这将安装在您的本地驱动器上。在我的情况下,它放置在这里:C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin
通过命令行或 PowerShell 浏览到此位置
您将要执行SqlPackage.exe
打开此链接以查看 SqlPackage.exe 的所有参数选项列表(http://msdn.microsoft.com/en-us/library/hh550080(v=vs.103).aspx)
这是我需要执行的命令行,将 .bacpac 文件导入我的本地 SQL 2008 R2 服务器:
.\SqlPackage.exe /a:Import /sf:C:\mydatabasefile.bacpac /tdn:NorthWind /tsn:BINGBONG
/tdn
是你想要还原 bacpac 文件到的数据库名称。/tsn
是你的 SQL 服务器名称。你可以在第五个链接中看到所有这些参数的描述。
您可以使用客户端工具来还原BACPAC文件。有关视频,请参见以下链接:
http://dacguy.wordpress.com/2011/09/09/importexport-services/
这些工具可在以下链接中找到:
看来我的祷告得到了回应。Redgate今天免费推出了他们的SQL Azure备份工具-http://www.red-gate.com/products/dba/sql-azure-backup/download
cd [FOLDERPATH]
$goodlist = dir
cd 'C:\Program Files (x86)\Microsoft SQL Server\110\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]
}