使用Git部署在Azure上进行数据库模式迁移

时间:2012-06-23 11:33:59

标签: database git azure migration

我正在寻找一种在Windows Azure上使用Git部署以及MySQL或其他数据库解决方案的方法。

我需要一种在部署过程中迁移数据库架构更改的方法 - Azure在不使用Visual Studio或.NET的情况下为此提供支持。

2 个答案:

答案 0 :(得分:4)

您基本上希望将Azure用作持续集成(CI)平台,我的观点是Azure本身就不存在。

基于git的基本CI场景将涉及以下步骤。

  1. 您的src代码和任何数据库架构/数据更新都会被推送到像GitHub这样的中央git存储库。 [可用功能]
  2. 然后GitHub会将更新推送到Azure。 [在Azure支持GitHub挂钩之前不支持]
  3. Azure编译并部署代码。 [支持]
  4. Azure从repo中提取的sql文件更新数据库(请记住,这需要自动化)。 [不支持]
  5. Azure报告运行数据库或Web应用程序时出现的任何错误。 [支持]
  6. Azure运行用户提供的集成测试,以更全面地检查特定功能,并向用户报告这些测试的状态[不支持]。
  7. Azure允许您回滚到以前的部署快照[部分支持。例如,快照不是基于git提交。
  8. 我可能在某些方面有误,或者自从我写完这些内容后可能会添加新功能。更正非常受欢迎,我会尝试相应地更新列表。

答案 1 :(得分:0)

我不确定您使用Windows Azure网站有多少经验,但是当您创建Windows Azure网站时,您可以使用直接与Windows Azure网站集成的SQL Azure数据库或MySQL云数据库。

因此,如果您将使用SQL Azure数据库,那么您可以通过以下几种方式迁移数据库:

Migrating Databases to Windows Azure SQL Database (formerly SQL Azure)

要管理MySQL,您可以使用Local Web Server来执行此操作。我的方法是使用PHP,MySQL命令行工具(MySQL的一部分),以及在我的本地机器上设置的Web服务器,并且我已经为MySQL启用了PDO扩展。通过这种方式,我可以直接从我自己的本地机器管理我的MySQL,详细信息将在本文的底部解释:

Create a PHP-MySQL Windows Azure web site and deploy using Git

如果您使用MySQL和Oracle SQL Developer,则可以在Workbench中编写SQL部分。

最后,Git Deployment允许您在不使用VSx的情况下将任何类型的应用程序直接部署到Windows Azure。