Database/MYSQL

Mysql 모니터링 스크립트

Mr. YeokMaSsal 2022. 8. 1. 17:59
728x90
반응형

Mysql 모니터링 스크립트

아래 스크립트는 S전자 보안포털 운영 프로젝트에서 모니터링 업체가 Mysql 모니터링시 사용하는 스크립트 이다.

OS Disk Usage - 기준값 : 80% 이하

OS Disk Usage - 기준값 : 80% 이하

 

Mysql Data Size

SELECT ROUND(SUM(A.DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024, 2 ) AS SIZE_GB
  FROM information_schema.tables A

 

Memory Usage

# Mysql Total Memory (현재 Mysql에서 사용하는 메모리 사용률)
ps awxuf | grep mysqld | grep -v grep | grep -v sage | awk '{print $4}'

# Innodb buffer pool size 
mysql> show global variables like 'innodb_buffer_pool_size';

 

Innodb_buffer pool hit rate - 기준값 : 99% 이상

-- 수식 : innodb buffer pool hit ratio = Innodb_buffer_pool_read_requests / (Innodb_buffer_pool_read_requests + Innodb_buffer_pool_reads)

SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool%';

 

Max connections

/* Connection 될수 있는 최대 값 */
show global variables like '%max_connections%';

/* 최대 접속된 클라이언트 수 */
show global status like '%max_used_connections%';

 

Created Tmp - 기준값 : 10%미만

(created_tmp_disk_tables / (created_tmp_disk_tables + created_tmp_tables)) * 100

 

Innodb engine 사용중 발생되는 last dead lock, Fk error, lock 발생 Issue 확인

show engine innodb status \G

 

Replication 구조일 경우 Slave 현재 상태 확인

show slave status\G

 

 

 

728x90