Мониторинг использования байтов больших пулов буферов MySQL InnoDB?

Я пытаюсь отслеживать общее количество используемых байтов в буферном пуле MySQL 5.7 InnoDB, который может достигать 100 ГБ, используяInnodb_buffer_pool_bytes_dataно кажется, что эта переменная состояния представляет собой 32-битное целое число без знака, когда я запрашиваю ее, поэтому она переполняется, когда байты проходят больше 2 ^ 32.

Кажется, это длинное целое число без знака внутри MySQL ( https://github.com/mysql/mysql-server/blob/5.7/storage/innobase/include/srv0srv.h#L892 )?

Сначала я думал, что переполнение произошло в моем стеке мониторинга (Telegraf+InfluxDB+Grafana) —

График Grafana, показывающий переполнение Interger с течением времени, при этом Innodb_buffer_pool_bytes_data в настоящее время составляет 490 МБ.

- но прямой запрос MySQL показывает, что он из MySQL, а не из моего решения для мониторинга:

      SHOW GLOBAL STATUS WHERE Variable_name = "Innodb_buffer_pool_bytes_data"

-доходность490371968примерно для той же временной метки, что и в Grafana выше.

Как я могу точно отслеживать истинное значение?

0 ответов

Другие вопросы по тегам