
发现真是要学到老的节奏啊。今天一早上发现有台服务器负载100%,然后一看CPU占比100%,查了下主要原因是mysql数据库在不停读写,重启服务器无效。搜了搜,发现可以通过一些命令查看mysql进程情况,看看是哪条进程占用较多,然后关闭这条进程。
SSH终端,输入命令
mysql -u root -p
输入密码,然后输入命令
show processlist\G
查看mysql运行进程,之前的忘记截图了,重新截个说明下参数:

Id:连接标识符,这是同一类型的在所显示的值ID的列INFORMATION_SCHEMA.PROCESSLIST表,该PROCESSLIST_ID性能视图的列threads 表,并且通过返回的 CONNECTION_ID()功能。
User:发出声明的MySQL用户,如果是system user,它是指由服务器产生的非客户线程,以在内部处理任务。这可能是复制从站或延迟行处理程序使用的I / O或SQL线程。unauthenticated user指的是已经与客户端连接关联但是还没有完成客户机用户的认证的线程。 event_scheduler指的是监视预定事件的线程。如果是system user那么在Host列中不会指定主机 。
Host:发出该语句的客户端的主机名(system user没有主机除外),以便更容易地确定哪个客户端正在做什么,显示方式:host_name:client_port。
db:当前执行语句对应的默认数据库,如果选择了;否则为NULL。
Command:显示这个线程此刻正在执行的命令,一般对应DDL或DML语句。
Time:表示线程处于当前状态的时间长短,线程当前时间的概念在某些情况下可能会发生改变:线程可以改变时间。对于正在从主机处理事件的从站上运行的线程,线程时间设置为事件中发现的时间,因此反映了主站而不是从站的当前时间。SET TIMESTAMP = value。
State:对应Command指令,大多数状态对应于非常快速的操作。如果线程在给定状态下保持多秒,则可能存在需要调查的问题。
Info:包含由线程执行的语句的文本或者NULL,如果它不是执行的话。默认情况下,此值仅包含语句的前100个字符。要查看完整的语句,请使用SHOW FULL PROCESSLIST。