Php 将具有关系的数据项复制到另一个数据库

Php 将具有关系的数据项复制到另一个数据库,php,mysql,doctrine-orm,Php,Mysql,Doctrine Orm,我使用PHP和Doctrine 2,并使用MySQL作为我们的数据库服务器 我们有几个数据库,我们需要将相同的新数据插入到所有数据库中 问题是自动增量值不同,我们必须复制一个实体及其子实体,因此仅将数据从一台服务器复制到另一台服务器是行不通的。更新所有的自动增量键使之相同是一个讨厌的黑客行为,我想避免这种情况 是否有一些通用工具可以帮助复制新数据,同时维护关系,并在需要时插入新值?关系信息可以由数据库中的外键确定,甚至可以由我们的条令实体的注释确定 我们可以在其他服务器上重新运行导入脚本,但这需

我使用PHP和Doctrine 2,并使用MySQL作为我们的数据库服务器

我们有几个数据库,我们需要将相同的新数据插入到所有数据库中

问题是自动增量值不同,我们必须复制一个实体及其子实体,因此仅将数据从一台服务器复制到另一台服务器是行不通的。更新所有的自动增量键使之相同是一个讨厌的黑客行为,我想避免这种情况

是否有一些通用工具可以帮助复制新数据,同时维护关系,并在需要时插入新值?关系信息可以由数据库中的外键确定,甚至可以由我们的条令实体的注释确定

我们可以在其他服务器上重新运行导入脚本,但这需要几个小时才能运行。能够导出一些sql命令并在另一台服务器上简单地重新运行它们将是理想的


否则,听起来我手头上有一个有趣的编码项目。

quick/dirty将插入临时表集中,如果使用级联外键,只需更新父记录并让事情级联即可。否则,您将无法将数据写入客户端代码,然后使用新ID复制父/子插入序列。啊,很有趣。几秒钟后我想到的另一种方法是创建并序列化新实体,然后在序列化数据上运行导入脚本。嗯……=)序列化不会有太大帮助,因为您将序列化可能重复的ID以及其他所有内容。真的。对我来说幸运的是,唯一预先存在的实体就是标签。所有其他被关联的实体都是新的。我应该重构代码,因为99%的时间都在准备导入数据。然后,我可以根据预先准备好的数据进行导入,并对每个数据库运行导入,这将非常快。我仍然希望有一个干净的通用解决方案来解决这个问题。(很抱歉重新评论,意外删除。旨在清除一些拼写错误!)