在 MySQL 中快速插入大量数据(例如 20 万条记录)可以通过多种方法实现。以下是一些优化技巧和步骤,可以帮助你高效地插入大量数据:
1. 禁用索引和约束(如果可能)
在插入大量数据之前,禁用索引和外键约束可以显著提高插入速度。在插入完成后,再重新启用它们并重建索引。
sql
-- 禁用外键约束
SET foreign_key_checks = 0;
-- 禁用唯一性检查
SET unique_checks = 0;
-- 禁用自动提交
SET autocommit = 0;
-- 禁用索引更新(对于MyISAM)
-- ALTER TABLE your_table DISABLE KEYS;
2. 使用批量插入
批量插入可以显著减少插入操作的开销。例如,使用 INSERT INTO ... VALUES (...), (...), ... 语法。
sql
INSERT INTO your_table (column1, column2, column3)
VALUES
(value1_1, value1_2, value1_3),
(value2_1, value2_2, value2_3),
-- 继续添加更多行,直到达到合理的批量大小(如几千行)
(valueN_1, valueN_2, valueN_3);
3. 使用事务
在事务中执行批量插入可以减少每次提交的开销。
sql
START TRANSACTION;
-- 批量插入语句
INSERT INTO your_table (column1, column2, column3)
VALUES
(value1_1, va

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



