1. docker 启动了一个mysql 实例,近期忽然发现cpu100% 如下图所示
命令: top
2.进入容器内排查:
docker exec mysql(此处可以是docker ps -a 查找出来的image_id) -it /bin/bash
cd /var/log
cat mysqld.log
容器内mysql 日志没有内容
top 命令 在容器内也未安装
3. mysql命令排查:
# 查看 time 是否有超级大的,阻塞了
show full processlist;
# 如果有则kill
kill id (上个命令,结果的第一列就是id)
多次运行未发现有长时间sql阻塞。
4. 重启mysql:
docker restart mysql实例名称
重启后发现 cpu 打满
5. 查看容器日志:
docker logs -f --tail=100 mysql
仍是为发现异常日志
6. 使用服务器命令:
由图可知,pid为25113,使用如下命令
top -H -p 25113
7. 由此发现问题,为connection 打满导致的,那么再继续排查代码,或是否有恶意连接爆破密码。两个方向排查即可!~