使用 INSERT INTO foo ... SELECT FROM bar JOIN baz ...
样式插入语句与使用相同的 SELECT 语句将 (bar, baz) 转储到文件有什么含义, 然后通过加载文件插入 foo?
在我的胡闹中,我没有看到很大的不同。我假设前者会使用更多内存,但运行它的机器有 8GB 内存,我什至从未见过它用过一半。
是否有任何我没有看到的巨大(或长期)性能影响?两者的优点/缺点?
编辑:这个加载过程是自己发生的。当时没有别的查询数据库,所以锁定表不是什么大问题,纯粹的速度才是。
最佳答案
转储和加载的一个优点是它不会锁定您正在选择的表。如果选择运行很长时间,这可能非常重要。
关于mysql - INSERT INTO ... SELECT ... 与在 MySQL 中转储/加载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2790333/