我有一个场景,我需要做相对大量的插入。 假设我每分钟有一百万行...被插入到结构相同的表中,但是对数据应用了不同级别的聚合。Mysql InnoDB合并/复制数据
此外,为了再次访问这些数据,它的索引很大。
现在,为了尽快完成插入操作,腾出时间进行其他处理,我想插入到具有完全相同结构但没有索引的“DUMP”表中,然后运行将数据ETL到索引聚集表中的“合并过程”...争辩说,因为它发生在数据库内部,它应该比从外部多次推入更快。
但是,一个简单的“insert into tableB select * from tableA”很容易就超过了我的innodb_buffer_pool和行锁,然后错误1026我。
因此,最后要回答的问题是:是否有快速/可靠的方式将大量数据从一个表移动到另一个表?
表格可以也可能会被分区。我猜想你可以简单地将一个分区从一个表移动到另一个表。
如果“从插入选择”是,那么我想它会更安全,更容易插入所有从应用程序端。