企业动态关于我们联系我们
   建站常识
 域名常识
域名解析问题集锦
域名基础知识概述
域名dns问题集锦
国内域名转入业务问题集锦
 空间常识
虚拟主机产品说明书
FTP上传注意事项
ftp操作常识问题集锦
网站无法上传怎么办?
 邮局常识
什么是电子邮件地址?
企业邮箱与免费邮箱的区别,企业邮箱的优点?
什么是SMTP?
什么是POP3?
 建站常识
企业如何建好网络营销
三种类型企业网站的作用
如何推广B2C独立网店
做网站快速成功的九个步骤
 SEO 知识
什么是SEO?
什么是SPAM?
SEO和SPAM有什么区别?
影响SEO的几点常识

首页技术交流ASP
5招优化MySQL插入方法   2009/4/2   返回前页

以下是涉及到插入表格的查询的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语句.


   广告也精彩
版权所有:南京欧万网络服务工作室 www.owon.cn sitemap