Знаете ли вы, что можно получить информацию от процессоров вашего MySQL Server из SQL?
Если вы включите статус таблицы INNODB_METRICS в INFORMATION_SCHEMA, вы сможете запрашивать информацию о процессоре.
Сначала проверьте, включены ли эти статусы:
MySQL> SELECT name, subsystem, status FROM INFORMATION_SCHEMA.INNODB_METRICS where NAME like 'cpu%'; +---------------+-----------+----------+ | name | subsystem | status | +---------------+-----------+----------+ | cpu_utime_abs | cpu | disabled | | cpu_stime_abs | cpu | disabled | | cpu_utime_pct | cpu | disabled | | cpu_stime_pct | cpu | disabled | | cpu_n | cpu | disabled | +---------------+-----------+----------+ 5 rows in set (0.00 sec)
По умолчанию их нет, давайте включим их:
MySQL> SET GLOBAL innodb_monitor_enable='cpu%'; Query OK, 0 rows affected (0.00 sec) MySQL> SELECT name, subsystem, status FROM INFORMATION_SCHEMA.INNODB_METRICS where NAME like 'cpu%'; +---------------+-----------+---------+ | name | subsystem | status | +---------------+-----------+---------+ | cpu_utime_abs | cpu | enabled | | cpu_stime_abs | cpu | enabled | | cpu_utime_pct | cpu | enabled | | cpu_stime_pct | cpu | enabled | | cpu_n | cpu | enabled | +---------------+-----------+---------+
Теперь очень легко увидеть содержимое этих таблиц:
MySQL> select * from information_schema.INNODB_METRICS where name like 'cpu%'\G
Эта новая функция может быть очень полезна в облачной среде, где эта информация не всегда доступна, или в средах, где администратор базы данных не имеет доступа к системе.