6

我正在尝试启动并运行 Windows Azure,但发现数据库方面非常令人沮丧。我需要将本地数据库从 SQL 2008 导出到 bacpac 文件,然后导入 Azure。我还希望能够从 Azure 导出,然后导入到我的本地数据库进行调试。

我在网上找到了一些教程来实现这一点,但每次我完成其中一个教程时,我最终都会遇到一个需要将信息或下载标记为过时的步骤的部分!它似乎随着时间的推移发生了很大变化,我找不到最新的资源

谁能提供有关如何执行此操作的更新链接?

谢谢

4

2 回答 2

13

我遇到了同样的问题,所有关于导入/导出 .bacpac 的文档大多参考 SQL 2012。我需要将 sql 2008 R2 express 数据库导出到 azure 以及能够从 azure 导出到我的本地开发环境。

我发现SQL 数据库迁移向导 v3.9.9 和 v4.0.12可以解决问题。

下载链接:http ://sqlazuremw.codeplex.com/releases/view/32334

还下载文档,它将完成 .bacpac 与 azure 和本地服务器之间的迁移。该工具的优点在于它将对数据库执行兼容性检查,以确保它已准备好部署到 azure。

我还研究了另一个命令行工具 sqlpackage.exe,它可以作为Microsoft SQL Server Data Tools的一部分下载

下载链接:http: //msdn.microsoft.com/en-us/data/hh297027

以下是导出 .bacpac 文件的示例:

sqlpackage.exe /a:Export /ssn:SERVERNAME\sqlexpress /sdn:SOURCEDATABASENAME /su:DATABASEUSER /sp:DATABASEPASSWORD /tf:c:\SOURCEDATABASENAME.bacpac
于 2012-11-27T03:51:28.000 回答
7

我需要导出 SQL Azure 数据库,然后将其导入本地 SQL 2008 R2 服务器(注意我也在使用 Visual Studio 2010)。微软当然不遗余力地让这成为一项痛苦的任务,但是,我能够通过执行以下操作来做到这一点:

  1. 转到链接http://msdn.microsoft.com/en-us/jj650014并安装适用于 Visual Studio 2010 的 SQL Server Data Tools

  2. 这将安装在您的本地驱动器上。在我的情况下,它放在这里:C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin

  3. 通过命令行或 powershell 浏览到这个

  4. 您将要执行 SqlPackage.exe

  5. 打开此链接以查看 SqlPackage.exe 的所有参数选项列表 ( http://msdn.microsoft.com/en-us/library/hh550080(v=vs.103).aspx )

  6. 这是我需要执行的命令行,以将 .bacpac 文件导入本地 SQL 2008 R2 服务器:

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

/tdn 是您希望将 bacpac 文件还原到的数据库的名称。/tsn 是您的 SQL 服务器的名称。

您可以在 #5 的链接上看到所有这些参数说明。

于 2013-03-14T21:06:55.483 回答