Welcome 微信登录

首页 / 数据库 / MySQL / MySQL insert性能优化笔记

对于一些数据量较大的系统,面临的问题除了是查询效率低下,还有一个很重要的问题就是插入时间长。我们就有一个业务系统,每天的数据导入需要4-5个钟。这种费时的操作其实是很有风险的,假设程序出了问题,想重跑操作那是一件痛苦的事情。因此,提高大数据量系统的MySQL insert效率是很有必要的。经过对MySQL的测试,发现一些可以提高insert效率的方法,供大家参考参考。1. 一条SQL语句插入多条数据。常用的插入语句如:
  1. INSERT INTO `insert_table` (`datetime`, `uid`, `content`, `type`) VALUES ("0", "userid_0", "content_0", 0); 
  2. INSERT INTO `insert_table` (`datetime`, `uid`, `content`, `type`) VALUES ("1", "userid_1", "content_1", 1); 
修改成:INSERT INTO `insert_table` (`datetime`, `uid`, `content`, `type`) VALUES ("0", "userid_0", "content_0", 0), ("1", "userid_1", "content_1", 1);  修改后的插入操作能够提高程序的插入效率。这里第二种SQL执行效率高的主要原因有两个,一是减少SQL语句解析的操作, 只需要解析一次就能进行数据的插入操作,二是SQL语句较短,可以减少网络传输的IO。这里提供一些测试对比数据,分别是进行单条数据的导入与转化成一条SQL语句进行导入,分别测试1百、1千、1万条数据记录。
记录数单条数据插入多条数据插入
1百0.149s0.011s
1千1.231s0.047s
1万11.678s0.218s
  • 1
  • 2
  • 下一页
SQL Server连接Oracle详细步骤Oracle 常用连接查询方法和函数相关资讯      MySQL优化  MySQL基础教程 
  • MySQL中索引和优化的用法总结  (今 14:24)
  • MySQL优化技术  (04月09日)
  • 关于skip_name_resolve参数的总结  (03月26日)
  • MySQL优化 - 开启MySQL慢查询日志  (05月12日)
  • MySQL explain执行计划优化  (04月09日)
  • MySQL数据库的优化  (03月05日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数


评论声明
  • 尊重网上道德,遵