专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » mysql优化:优化MySQL插入思路方法的 5个妙招 »正文

mysql优化:优化MySQL插入思路方法的 5个妙招

来源: 发布时间:星期一, 2009年4月6日 浏览:0次 评论:0
="t18">  以下是涉及到插入表格查询5种改进思路方法:

  1)使用LOAD DATA INFILE从文本下载数据这将比使用插入语句快20倍

  2)使用带有多个VALUES列表INSERT语句次插入几行这将比使用个单行插入语句快几倍调整bulk_insert_buffer_size变量也能提高(向包含行表格中)插入速度

  3)可以对myisam表并行插入Concurrent_insert系统变量可以被设置用于修改concurrent-insert处理该变量默认设置为1如果concurrent_insert被设置为0并行插入就被禁用如果该变量被设置为2在表末端可以并行插入即便该表某些行已经被删除

  4)使用插入延迟

  如果你客户不能或无需等待插入完成时候这招很有用当你使用MySQL存储并定期运行需要很长时间才能完成SELECT和UPDATE语句时候你会发现这种情况很常见当客户使用插入延迟服务器立刻返回如果表没有被其他线程则行会列队等待被插入使用插入延迟个好处就是从多个客户插入情况会被绑定并记录在同个block中这将比处理多个独立插入要快得多

  5)插入的前将表锁定(只针对非事务处理型表)

  这将提高数据库性能索引缓冲区只是在所有插入语句完成后才对磁盘进行次刷新通常情况下有多少个插入语句就会有多少次索引缓冲区刷新如果你可以用个插入语句实现所有行插入则无需使用显式锁定语句

  要想更快地对事务型表插入你应该使用START TRANSACTION和COMMIT语句而不是LOCK TABLES语句

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: