有人知道如何复制SQL Azure数据库到我的开发机器吗?我不想再花钱在云端建立开发数据库,但这是获得生产数据的最佳方式。我将我的生产数据库复制到一个新的开发数据库,但我想在本地拥有相同的数据库。
有什么建议吗?
有人知道如何复制SQL Azure数据库到我的开发机器吗?我不想再花钱在云端建立开发数据库,但这是获得生产数据的最佳方式。我将我的生产数据库复制到一个新的开发数据库,但我想在本地拥有相同的数据库。
有什么建议吗?
当前回答
对我来说,诀窍是开始在空DB上复制pk /FKs/约束,然后在导入数据时暂时禁用约束(参见https://stackoverflow.com/a/161410)。
更准确地说应该是:
手动创建空目标DB; 右键单击源DB > Tasks >生成脚本; 在空的目标DB上运行脚本文件(现在DB有正确的PKs/FKs/约束,但没有数据); 禁用所有约束; 导入数据(右键单击目标DB > Tasks > Import data); 重新启用约束。
希望这能有所帮助!
其他回答
如果有人想要一个免费有效的选项(也不介意手动操作)来将数据库备份到本地,那么可以使用最新版本Microsoft Visual Studio 2015社区版(免费)或专业/高级/终极版中内置的模式和数据比较功能。它像魔法一样有效!
我有BizPark帐户与Azure,没有办法直接备份数据库没有支付。我发现这个选项在VS工作。
答案摘自https://stackoverflow.com/a/685073/6796187
看来2022年的Management Studio缺少功能了。下面是我如何使用Azure Data Studio:
安装Azure Data Studio Open Azure Data Studio 安装名为Admin Pack for SQL Server的扩展 重启Azure Data Studio 为源数据库(Azure)和目标数据库(本地机器)设置连接 在主数据库的本地DB引擎中执行语句:
sp_configure 'contained database authentication', 1;
GO
RECONFIGURE;
GO
右键单击源数据库并选择数据层应用程序向导 选择导出到。bacpac文件[导出bacpac](第四,在我的当前版本的最后一个选项) 完成向导 右键单击目标数据库并选择数据层应用程序 Wizzard 选择Import from .bacpac [Import bacpac](我的版本中的第三个选项) 选择先前创建的.bacpac文件并完成向导
在导入登录名和用户之后,创建了登录名和用户,但是没有设置它们的默认模式。如果需要默认的shcema,则需要手动处理。在这种情况下: 打开到本地副本的管理连接并运行: 使用[imported-db];ALTER USER - import - USER WITH DEFAULT_SCHEMA
您也可以在Windows Azure管理门户中检查SQL Azure数据同步。它允许您检索和恢复整个数据库,包括SQL Azure和SQL Server之间的模式和数据。
下载Optillect SQL Azure备份-它有15天的试用期,所以它足以移动你的数据库:)
公认的答案已经过时了。我找到了一个更好的答案:使用导入数据层应用程序
更多详细信息请参阅本文: 恢复Azure SQL数据库到本地服务器