首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql中用于插入数据的连接太多了。

mysql中用于插入数据的连接太多了。
EN

Stack Overflow用户
提问于 2012-05-22 09:03:10
回答 2查看 865关注 0票数 1

我正在讨论mysql服务器和phpmyadmin中太多的连接,从我的数据库中的源到每小时~1000的数据速度。当我在服务器上运行时,mysqld显示了100%-145%的cpu利用率,还有很多php线程正在运行,比如通过php脚本插入数据。我的问题是,是否有任何机制使连接不溢出,而mysql服务器利用cpu越低越好。因为我使用的是vps服务器,但是在VPS上使用另一个应用程序并不那么有效,因为mysql服务器占用100%的cpu。有时phpmyadmin崩溃并显示一些民间错误。我读过查询缓存机制,但它用于缓存相同的select查询,如果将其用于insert,或者是否存在其他最佳解决方案类型的队列机制。另外,我不能说插入数据速度是低还是高的时间,如果它知道,那么我可以尝试队列机制。提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2012-05-22 09:12:31

检查你的密码,看看你有没有类似的东西

代码语言:javascript
复制
for($i = 0; $i < 10000; $i++) // basicly long loop with inserts
    mysql_query("INSERT INTO table_name (id, value) VALUES ({$i}, 100)");

这应该被修改成

代码语言:javascript
复制
$arr_values = array();
for($i = 0; $i < 10000; $i++)
    $arr_values[] = "({$i}, 100)";

$str_values = implode(', ', $arr_values);

mysql_query("INSERT INTO table_name (id, value) VALUES {$str_values}");

基本地,要注意代码中不必要的查询。

票数 1
EN

Stack Overflow用户

发布于 2012-05-22 09:08:32

您应该从以下链接了解“查询缓存”的基本知识

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10698874

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档