博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
向mysql的innodb表快速插入数据的php程序
阅读量:7208 次
发布时间:2019-06-29

本文共 663 字,大约阅读时间需要 2 分钟。

做项目的时候经常需要模拟数据,往往都是百万甚至千万级的,对于innodb的表可以参考下面的程序,真的很快,在表里已经有2千万条记录后再插入1千万条记录花了2分钟:

 
  1. // 连接 
  2. $conn = mysql_connect("localhost""root""xxxx"); 
  3. mysql_select_db("test"$conn); 
  4.  
  5. // 关闭自动提交会大大提高插入速度 
  6. $sql = "SET AUTOCOMMIT=0" ; 
  7. mysql_query($sql); 
  8.  
  9. $tmp = array(); 
  10. for ($i = 1; $i <= 10000000; $i++) 
  11.     // 每1000行组成一条sql,这比一行一个sql效率要高 
  12.     if ($i % 1000 == 0) 
  13.     { 
  14.         $sql = "insert into test values"
  15.         $sql .= implode(','$tmp); 
  16.         mysql_query($sql); 
  17.         $tmp = array(); 
  18.     } 
  19.  
  20.     if($i%50000 == 0) 
  21.     { 
  22.         echo $i."\n"
  23.     } 
  24.     $tmp[] = "(null, 'aa','bb', 'cc')"
  25. echo "over\n"
  26.  
  27. // 打开自动提交 
  28. $sql = "SET AUTOCOMMIT=1" ; 
  29. mysql_query($sql); 

 

本文转自 ustb80 51CTO博客,原文链接:http://blog.51cto.com/ustb80/1053099,如需转载请自行联系原作者
你可能感兴趣的文章
c# 的传递参数值传递与传递引用的区别,ref与out区别
查看>>
win7+vs2008+cuda5.x 环境配置二
查看>>
PHP5.5安装PHPRedis扩展
查看>>
c#Socket Tcp服务端编程
查看>>
java构造函数注意点
查看>>
Asp.net 中配置 CKEditor和CKFinder
查看>>
Use dynamic type in Entity Framework 4.1 SqlQuery() method
查看>>
《Python CookBook2》 第四章 Python技巧 - 若列表中某元素存在则返回之 && 在无须共享引用的条件下创建列表的列表...
查看>>
redhat网卡设置
查看>>
javascript 的作用域
查看>>
JFinal极速开发框架使用笔记(二) 两个问题,一个发现
查看>>
AutoCompleteTextView
查看>>
SecureCRT生成序列
查看>>
Android 应用程序主框架搭建
查看>>
2012腾讯春季实习生面试经历(二)
查看>>
用Bootstrap框架弹出iframe页面 在弹出的模态框中载人iframe页面,bootstrapiframe
查看>>
2012腾讯暑期实习面经(技术类web前端)
查看>>
第3种方法获取redis cluster主从关系
查看>>
注册表管理(本地、远程)
查看>>
《Linux内核设计与实现》第四周读书笔记——第五章
查看>>