手工SEO

手工SEO首页 DEDE教程 正文

windows2008下mysqld-nt.exe 占cpu高的处理办法

手工SEO 2020-02-10 12:00:00 DEDE教程 200℃ 手工SEO

如果服务器的mysqld-nt.exe 占CPU很高

 

如果服务器的mysqld-nt.exe 占CPU很高,一般是因为MYSQL的数据库中有数据进行采集,或者是数据库出现问题。观察办法是:使用phpmyadmin 进行观察,在phpmyadmin “进程”中查看在线的数据库,点击Kill 删除可疑的进程,如果删除了出错数据库mysqld-nt.exe所占的CPU会马上下降。

 

发现数据库后可以进行修复,或者禁止该用户使用该数据库。一般CPU过高是因为该用户生成静态或者进行采集。而控制程序池无法解决数据库CPU过高的问题,不知道有什么好办法可以控制某个数据库占数据库CPU。

 

UPdate:发现该数据库有问题,已经关闭该用户,一切恢复正常。

1.开始 = 运行 cmd   

假设你的mysql在D:\wamp\bin\mysql\mysql5.5.8\bin输入以下命令:

1. d:

2. cd wamp

3. cd bin

4. cd mysql

5. cd mysql5.5.8

6. cd bin

就会进入mysql所在程序

输入 mysql -uroot -padmin进入mysql控制台

输入  mysql> show processlist;

查询现在mysql在干什么。

按向上箭头 在查询一边,看哪个数据库查询的语句比较频繁!

一般是睡眠连接过多,严重消耗mysql服务器资源(主要是cpu, 内存),并可能导致mysql崩溃。

mysql的配置my.ini文件中,有一项:

wait_timeout, 即可设置睡眠连接超时秒数,如果某个连接超时,会被mysql自然终止。

如设置: 

wait_timeout=100 #即设置mysql连接睡眠时间为100秒,任何sleep连接睡眠时间若超过100秒,将会被mysql服务自然终止,要比编写shell脚本更简单。

对于正在运行中的生产服务器

以root用户登录到mysql,执行:

set global wait_timeout=100

上一篇:HTML5在a标签内放置块级元素示例代码

下一篇:网站优化如何做好用户体验

网站分类
标签列表