【发布时间】:2012-12-04 17:14:56
【问题描述】:
我在一家使用 PHP 的公司工作。使用了不同的 CMS 系统,例如 Wordpress 或 Magento。 我们正在使用拥有自己的存储库服务器的 git,我们必须将其部署到不同客户的不同服务器上。
我已经使用 capistrano 设置了一个部署脚本,它运行良好,但数据库同步非常棘手。
假设实时数据库包含用户数据,我必须在网站启动后创建一些新功能,并且数据库中已经有大量 sql 数据。我个人使用的是一个虚拟数据库,因为我不需要任何客户信息。
PHP 极客如何部署数据库?我不想更改内容,只想迁移新的或修改过的表。我正在为此寻找一个完整的部署解决方案。如果需要,我也愿意接受除了 capistrano 之外的其他选择。尤其是在使用 Magento 时,我在保持数据库同步方面遇到了严重问题。
感谢任何帮助。
【问题讨论】:
-
您可能对此问题的答案感兴趣:stackoverflow.com/questions/9589619/…
-
抱歉,我喜欢您用于比较数据库的脚本,但我非常想寻找一种不会影响存储在数据库中的数据的迁移解决方案。就像 2 个人从事 Typo3/Magento/WP/whatever 项目并使用 git 合并他们的版本。他们还必须通过迁移来合并他们的数据库。如果必须发布结果,则包含实时数据的表不应丢失数据,而是要更新。这不是您的脚本所做的,但我认为可以改进它以实现该目标。
-
我的脚本根本不会影响任何数据,也不会自动进行任何更改,它所做的只是打印出两个 MySQL 数据库之间的差异列表。我并不是说我的脚本是适合您的工具,但是该问题的其他一些答案有一些有趣的解决方案,我认为您可能会感兴趣。
标签: php database git deployment capistrano