Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySql,为什么我的站点在页面快速加载时会达到100%的CPU?_Mysql - Fatal编程技术网

MySql,为什么我的站点在页面快速加载时会达到100%的CPU?

MySql,为什么我的站点在页面快速加载时会达到100%的CPU?,mysql,Mysql,我正在试图找出我的数据库导致100%CPU时间的可能原因 这已经有一段时间了,尽管我最近做了一些更改,使页面/查询运行得更快 这是我的ISP制作的我的网站,显示CPU使用情况 下面是我问我的ISP的一些问题 Me : would you say its a fast server ? ISP: yeah it has 4 cpu cores lol and 3.5gb ram ISP: 4 x intel xeon's 3.4ghz it has ISP: its also running ra

我正在试图找出我的数据库导致100%CPU时间的可能原因

这已经有一段时间了,尽管我最近做了一些更改,使页面/查询运行得更快

这是我的ISP制作的我的网站,显示CPU使用情况

下面是我问我的ISP的一些问题

Me : would you say its a fast server ?
ISP: yeah it has 4 cpu cores lol and 3.5gb ram
ISP: 4 x intel xeon's 3.4ghz it has
ISP: its also running raid 5 on ultra scsi 320 drivers
Me : what the mysql caching settings ?
ISP: which handles 320 mb/s
ISP: hmm maybe the mysql cache is low
ISP: have emailed it to you. 
Me : was it low ?
ISP: if you do post for advice one thing to mention is that this 
  is not a dedicated mysql server
ISP: so it can't be setup to use the server maximum resources
这是他寄给我的副本


这是我的phpMyAdmin页面。我想我说的很对,慢速日志中没有任何内容,我想慢速查询是在我修复之前出现的。

考虑到您的长查询时间设置为2,并且看起来每页都有多个查询启动,但返回速度相当快,也许您会在这里找到一些有用的东西,难怪你不知道什么是慢的。(注意,您可以在代码中重写此选项,以便为会话记录更详细的信息)

您并没有说这是一个专用的数据库服务器,或者它是否运行其他东西。视频中也没有任何内容表明CPU是mysql的直接结果(比如说与配置糟糕的AV扫描仪相比)

有很多潜在的原因,但在MSWindows平台上,很难诊断其中的大多数原因,甚至无法真正修复其中的许多原因

但是,如果您对生成页面所需的时间感到满意,那么为什么还要关心CPU的使用呢


还值得注意的是,您获得的change db ops的数量大约是select ops的两倍,这表明您的数据已被拆分为两个数据库

它在100%的情况下能保持多久?您是否运行了
show full processlist
以查看正在执行的查询?这可能是由许多原因造成的,为什么您如此确定问题源自所有事物的数据库?Ooops请参阅视频,了解之前添加的内容…您能在测试服务器上重现此问题吗?如果您的查询速度慢(慢是相对的,慢日志可能无法捕获它们)、表未索引/索引错误等,您可能会看到这一点。如果有一个实时病毒扫描器,这可能也没有帮助。不管怎样,试着重新提出这个。它可能不是DB,甚至可能是您的PHP代码。在视频中,CPU甚至没有达到100%。在任何情况下,仅仅为了有空闲的CPU而排队和延迟进程都是毫无意义的……查询时间长吗?这是它被杀死之前的最长时间吗?是的,有多个查询。我不知道我是否明白,为什么你说‘怪不得我不知道什么慢’?它是一个共享数据库服务器,但目前我只有一个数据库。页面加载时间还不错,我的ISP关心CPU时间。是的,有一台离线服务器来处理数据处理,由于实时服务器的性能,我不得不将其拆分。long_query_time是一个查询在被标记为写入慢速查询日志的候选对象之前必须运行的时间量。如果将其设置为较低的值,则应该能够在日志中查看导致问题的原因。那么它是一个专用的数据库服务器——Web服务器在其他地方运行?