这是我的情况。我有最新的当前数据库(让我们称之为current_db),但由于最近崩溃,其数据不完整。有些数据已被删除,此删除时间从2年前到昨天。
我从2013年11月开始备份这个数据库(我们称之为backup_db),其数据已经完成,直到2013年11月。由于current_db持有2013年11月至2014年2月期间的一些数据,我不想要只是废弃它,并从备份工作。所以我想将current_db导入backup_db,忽略重复的数据。
我已经找到方法来做到这一点,但找不到任何相关的方法。我遇到过一些SELECT查询,但它们都是简单的查询。我的数据库有20个表,我真的没有看到自己构建了一个巨大的查询来导入所有这些。还有其他办法吗?
由于
答案 0 :(得分:5)
可能出现的问题:
phpmyadmin中的最大文件上传大小可能是2MB。要解决此问题 增加最大文件上传大小php.ini
假设您有架构s1和架构s2。
要将s1中表格的所有行插入s2中的表格,同时覆盖现有行,您可以使用:
REPLACE INTO s2.table_name
SELECT * FROM s1.table_name;
如果您不想触及现有线路:
INSERT INTO s2.table_name
SELECT * FROM s1.table_name
ON DUPLICATE KEY IGNORE;
如果您有任何问题,请在此处评论。