请教mysql的效率问题

an9ryfr09 2005-12-26 03:57:41
我做一个测试php效率的程序,测试php大量插入数据的时候需要的时间。
测试环境是php5+apache2+mysql5+linux9。

让其对一个表循环插入1百万条记录,其中有几个字段插入的数据是用随机数的方式生成的。插入1万条的数据没有任何问题。一旦到达10万或者超过10万,后面的就插不进去了。select一下,只插入了2万多条数据。

测试了一下,不是随机数的问题,我插入一些常量如:"1111"之类的结果还是一样。效率极低。

猛然想到了一点,这个表中其中有5个字段建了索引。建立索引会提高where,order by,group by这些语句的效率,但是会影响insert和update,delete的效率。不知这不是最关键的原因。另外怎样提高效率请前辈们指点一二。谢谢!
...全文
108 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hy2003fly 2005-12-30
  • 打赏
  • 举报
回复
肯定是因为索引的关系,好像是每插入一条记录都会重建索引,你的数据量那么大,而且索引又多,当然会慢下来,还占用很多空间。全部插入后再建索引吧,索引也不需要太多,一两个就够了,多了反而不好。
  • 打赏
  • 举报
回复
插入完以后再建索引不好么?还是一直有这种需要呢?

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧