MySQL进程解释

我在运行linux的服务器上有一个MySQL进程,它总是运行,至less需要使用50%的1个内核(我有8个内核)…这是进程命令:

/usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/mysql/server.mydomain.com.err --pid-file=/var/lib/mysql/server.mydomain.com.pid 

这个过程在做什么? 这不是问题,只是一个问题。

你需要检查一下mysql守护进程在内部是如何工作的。 Mysql有一个内部进程的列表,请尝试运行以下命令:

 mysql -u root -p -e "SHOW FULL PROCESSLIST" 

如果你在你的〜/ .my.cnf中有你的密码,你可以使用watch来关注你的mysql进程列表:

 watch -n 1 mysql -u root -e \"SHOW FULL PROCESSLIST\" 

如果mysql一直在做50%,那么它可能正在处理一些事情,如果你能看到这些查询,那么可能有一种方法来优化它。

mytop – 用于监视MySQL性能的线程和性能的命令行实用程序。 使用这个,你可以找出哪个进程正在耗尽你的资源,你可以根据这个进行优化。

另一种优化你的mysql的方法是mysqltuner脚本 – 它只是一个小的perl脚本,当你在你的机器上运行这个脚本时,它将提供一个build议的值来优化你的mysql服务器和你当前的资源设置…..