首页 / MYSQL / Mysql更快INSERT
Mysql更快INSERT
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Mysql更快INSERT,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1214字,纯文字阅读大概需要2分钟。
内容图文
![Mysql更快INSERT](/upload/InfoBanner/zyjiaocheng/907/2950b5b72ea940dd8c6aade0628bd0cf.jpg)
好的,我有大约175k INSERT语句,相当大的INSERT语句,例如:
INSERT INTO `gast` (`ID`,`Identiteitskaartnummer`,`Naam`,`Voornaam`,`Adres`,`Postcode`,`Stad`,`Land`,`Tel`,`Gsm`,`Fax`,`Email`,`Creditcardnummer`) VALUES ('100001','5121-1131-6328-9416','Cameron','Rhoda','Ap #192-1541 Velit Rd.','54398','Catskill','Bermuda','1-321-643-8255','(120) 502-0360','1 48 428 3971-3704','tempor@justo.org','8378-3645-3748-8446');
(无视这是荷兰语的事实).所有数据都是完全随机的.
我必须这样做大约3到4次.在我的电脑上查询100k INSERT语句大约需要一个小时.有没有办法在不改变INSERT语句的情况下更快地完成这项工作?我正在使用MySQL Workbench.谢谢.
编辑
到目前为止,我已经尝试了所有建议.仅使用一个INSERT但多个VALUES会给出一个INSERT语句太大的错误.在插入之前禁用索引也不会提高性能.
我也试过通过命令行加载一个sql文件,但这也没有做任何事……
插入性能从每个INSERT的0.015s到0.032s不等.
解决方法:
将所有数据插入一个表 – 您要用数据库重新设置数据库的表 – 然后发出INSERT SELECT语句,因为它将以批处理而不是175K不同的语句执行它.
此外,当您使用INSERT SELECT语句重新设置数据库时,请关闭目标表上的约束ALTER TABLE yourtablename DISABLE KEYS然后再将它们重新打开ALTER TABLE yourtablename ENABLE KEYS.
我还会在种子数据表上亲自构建一个covering index,因为它不必读取数据页面.
内容总结
以上是互联网集市为您收集整理的Mysql更快INSERT全部内容,希望文章能够帮你解决Mysql更快INSERT所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。