Php 检查数据库架构和更新中的更改

Php 检查数据库架构和更新中的更改,php,mysql,Php,Mysql,在我们公司,我们有一个业务解决方案,其中包括CMS、CRM和其他几个系统。 这些安装在多个域中,用于我们的每个客户机。 这些系统仍在开发中,因此新的表和字段被添加到数据库中。 每次我们想向客户发布新版本时,我都必须检查他们的数据库并手动插入新字段和表。 有没有一种方法可以自动完成这项工作(一个脚本可以检测并插入新的字段和表?) 我们正在使用php和mysql。 我们希望避免备份客户机数据、删除数据库表、运行sql查询以插入所有数据库表(包括新表),然后重新插入客户数据。这可能吗?您要找的是 AL

在我们公司,我们有一个业务解决方案,其中包括CMS、CRM和其他几个系统。 这些安装在多个域中,用于我们的每个客户机。 这些系统仍在开发中,因此新的表和字段被添加到数据库中。 每次我们想向客户发布新版本时,我都必须检查他们的数据库并手动插入新字段和表。 有没有一种方法可以自动完成这项工作(一个脚本可以检测并插入新的字段和表?) 我们正在使用php和mysql。
我们希望避免备份客户机数据、删除数据库表、运行sql查询以插入所有数据库表(包括新表),然后重新插入客户数据。这可能吗?

您要找的是

ALTER TABLE 'xyz' ADD 'new_colum' INT(10) DEFAULT '0' NOT NULL;
或者如果你想扔掉一根柱子

ALTER TABLE 'xyz' DROP 'new_colum';
将所有表编辑放入update.php文件中,然后手动调用并删除它一次,或者尝试选择“new_coln”一次,并在数据库不存在时更新数据库。 或者我所做的:“我有一个设置字段“软件版本”,并将其用作更新表的触发器。 但由于您必须安装新脚本,因此您可以手动调用它。


DB Extract、Compare和Search实用程序-用于比较两个MySQL数据库,查看差异,并创建脚本以更新目标。

显示表状态将有所帮助…但为此,您必须具有myisam引擎类型。有一种称为数据库迁移的功能。请查看它…@这里的第一个问题,请阅读如何操作。