我正在尝试找到在不使用 EFCF 迁移的情况下将 EF Code First 数据库从本地主机同步/迁移到 SQL Azure 的最佳方法。我知道我可以使用这种方法,但我想看看不同的、不那么自动化的选项。
以下过程或类似过程的变体是我想要遵循的过程:
- 在本地开发,让 EFCF 在 localhost 上构建数据库
- 使用某些工具将本地数据库与 SQL Azure 上的阶段数据库同步
- 在暂存环境中运行测试
- 将数据库(本地或阶段)同步/迁移到 SQL Azure 上的生产数据库
使用 MySQL,这是一件轻而易举的事。MySQL Workbench可以将模式模型同步到相关数据库,简单明了。在这种情况下,我本身没有模式模型,但是 EFCF 生成的 localhost 上的数据库可以被认为是模式。
哪些工具可用于执行此任务?是否可以使用 SSMS 执行此操作?
更新:我是如何做到的:在 Craig 提示使用 Visual Studio 2012 数据库项目之后,我做了以下事情:
- 创建了一个空的 VS 2012 数据库项目并将其目标平台设置为 SQL Azure
- 是否进行了新架构比较,源数据库 = 本地数据库和目标 = 数据库项目
- 更新了目标。这使数据库项目加快了速度
- 做了一个新的比较,源 = 数据库项目和目标 = SQL Azure 阶段数据库
- 更新了目标。这使 SQL Azure 阶段数据库加速
这正是我想要的