gpt4 book ai didi

mysql - 将 mysql 数据库更改从本地推送到临时/生产

转载 作者:行者123 更新时间:2023-11-29 20:58:00 25 4
gpt4 key购买 nike

我玩过 Laravel 并且喜欢数据库迁移系统。

我还经常使用 WordPress,想知道是否有类似的方法来描述文本文件中的数据库更改,这些更改可以添加到 git 中,并将这些更改推送到暂存或生产环境中的数据库的远程版本。

也许本地计算机可以连接到远程 mysql 数据库并自动进行更改。

一定有什么东西,但我无法通过谷歌或其他途径找到任何东西。

我发现的最接近的是 http://dbv.vizuina.com/但我不确定这是否完全相同。

有人有任何工具或建议吗?

最佳答案

我会推荐你​​使用lib https://phinx.org/ 。我们公司正在使用这个库,我们对此非常满意。您可以使用 Composer 安装此库并使用 php 文件进行配置(这是一个选项 - 最好包含不同的配置文件 - 例如来自 wordpress 的配置文件)。这样做的一大优点是您可以用 php 代码编写迁移。您只需定义方法 up(进行迁移)和 down(回滚 - 您可以在选定的阶段执行此操作)。看下面的例子:

<?php

use Phinx\Migration\AbstractMigration;

class AddColumnsToVisitorTable extends AbstractMigration
{
public function up()
{
$table = $this->table('visitor');
$table->addColumn('send_at', 'datetime');
$table->addColumn('visitor_email', 'string');
$table->addColumn('visitor_source', 'string');
$table->update();
}

public function down()
{
$table = $this->table('visitor');
$table->removeColumn('send_at');
$table->removeColumn('visitor_email');
$table->removeColumn('visitor_source');
$table->update();
}
}

如果您将开发分支的更改 merge 到主分支,那么您也会 merge 迁移。 merge 后,我们部署了在实时环境上运行迁移的脚本。所以你确信你的代码已经改变了数据库。

关于mysql - 将 mysql 数据库更改从本地推送到临时/生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37466591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com