MySQL CPU 使用率高而进程列表为空

uns*_*ska 5 mysql linux cpu-usage

我们的 CPU 使用率已经达到顶峰。其范围为 10-150%。我们几周前就注意到了这一点,但它仍然没有下降。

SHOW PROCESSLIST;
Run Code Online (Sandbox Code Playgroud)

仅显示 2-3 个休眠连接和我自己的 SHOW PROCESSLIST 查询。

mysqladmin -u root -p -i 1 processlist
Run Code Online (Sandbox Code Playgroud)

通过偶尔的查询,显示几乎相同的内容。

sudo strace -t -p 18691
Run Code Online (Sandbox Code Playgroud)

每秒左右重复打印此内容,只有少数整数发生变化:

10:50:39 fcntl(13, F_GETFL)             = 0x2 (flags O_RDWR)
10:50:39 fcntl(13, F_SETFL, O_RDWR|O_NONBLOCK) = 0
10:50:39 accept(13, {sa_family=AF_FILE, NULL}, [2]) = 28
10:50:39 fcntl(13, F_SETFL, O_RDWR)     = 0
10:50:39 getsockname(28, {sa_family=AF_FILE, path="/var/run/mysqld/mysqld.sock"}, [30]) = 0
10:50:39 fcntl(28, F_SETFL, O_RDONLY)   = 0
10:50:39 fcntl(28, F_GETFL)             = 0x2 (flags O_RDWR)
10:50:39 setsockopt(28, SOL_SOCKET, SO_RCVTIMEO, "\36\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 0
10:50:39 setsockopt(28, SOL_SOCKET, SO_SNDTIMEO, "<\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 0
10:50:39 fcntl(28, F_SETFL, O_RDWR|O_NONBLOCK) = 0
10:50:39 setsockopt(28, SOL_IP, IP_TOS, [8], 4) = -1 EOPNOTSUPP (Operation not supported)
10:50:39 futex(0x7f4175a0ed24, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x7f4175a0ed20, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
10:50:39 futex(0x7f4175a0d7a0, FUTEX_WAKE_PRIVATE, 1) = 1
10:50:39 poll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}], 2, -1) = 1 ([{fd=13, revents=POLLIN}])
10:50:39 fcntl(13, F_GETFL)             = 0x2 (flags O_RDWR)
10:50:39 fcntl(13, F_SETFL, O_RDWR|O_NONBLOCK) = 0
10:50:39 accept(13, {sa_family=AF_FILE, NULL}, [2]) = 43
10:50:39 fcntl(13, F_SETFL, O_RDWR)     = 0
10:50:39 getsockname(43, {sa_family=AF_FILE, path="/var/run/mysqld/mysqld.sock"}, [30]) = 0
Run Code Online (Sandbox Code Playgroud)

我不知道如何分析。你能发现 strace 有什么问题吗?

内核版本是 3.13.0-44-generic 所以我认为这不应该是闰秒错误?有没有办法检查我们的机器是否存在闰秒错误?