如何在Magento中将数据库更改从开发部署到生产


9

我知道模块具有安装和数据设置脚本,以使DB从开发人员到生产人员都可以移植。

但是在我们的案例中,我们有UI开发人员,他们通过管理界面添加属性和产品,该界面被存储在开发数据库中。

发布之日,我们将无法重复在开发环境中所做的所有步骤,因为这将非常繁琐且耗时。

部署时是否有办法处理此类数据库更改。

现在,我们正在开发数据库和产品数据库之间进行比较,并生成一个SQL,该SQL将在发布日运行。但这没有什么危险,因为开发数据库可能包含测试事务数据,并且如果我们的SQL有任何修改事务表的语句,则最终可以将事务表锁定在生产中。

有这方面的最佳实践吗?我在这里先向您的帮助表示感谢

Answers:


8

在环境之间迁移数据有不同的扩展名,但是使用它们会使自己陷入困境。如果出现问题,您绝对不希望破坏生产环境。

迁移数据的唯一正确方法是使用安装脚本。

它还将允许设置新环境(例如,团队中的新鱼),以适应当前情况。

好的问题。


我个人发现,从头开始运行Magento Connect的某些模块并不总是完全兼容。我仍然必须弄清楚到底发生了什么,但是我们的商店设置处于这样的状态:从一个空数据库开始,安装脚本相互冲突,并且商店无法引导空数据库。为了再次从头开始,我们需要一次应用一个模块。或修复我们未编写的软件中的错误。
2015年

您如何将在Magento管理面板中所做的更改放入脚本中?例如:添加属性和产品,或更改某些扩展程序的配置?
安德里亚(Andrea)

1
@Andrea您只是不在Magento管理面板中进行更改。一切都通过安装脚本。当然,在某些情况下,如果您想尝试某些操作,则不确定您是否最终会在admin中进行更改,但是在这种情况下,必须通过安装脚本再次还原并应用这些更改。
user487772

仅供参考。我们最终使用安装脚本进行了大多数更改。幸运的是,一旦掌握了这些知识,我们的UI开发人员就不介意编写安装脚本。您还可以创建用于创建新设置脚本的票证,并将其分配给开发人员。我们还有一个营销团队,使用magento的CMS功能。我们没有要求他们在开发环境中进行这些更改,而是直接在生产中进行这些更改。我们添加了一个CMS角色,该角色仅使他们只能访问CMS功能。然后,我们有时会使用自定义脚本将CMS更改从Prod发布到Stage,然后发布QA和Dev。
Jeetendra Pujari
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.