mysql 모니터링 중 innoDB Buffer Usage가 100%를 유지하는 현상이 발생

 

아래 공식대로 계산 후  innodb_buffer_pool_size 를 변경

 

SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_pages_data'; -- IBPDataPages SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_pages_total'; -- IBPTotalPages SHOW GLOBAL STATUS LIKE 'Innodb_page_size'; -- IPS

IBPPctFull = IBPDataPages * 100.0 / IBPTotalPages

 

IBPctFull이 95%이상일 경우 DB 서버 RAM의 75%까지 innodb_buffer_pool_size를 설정.

 

 IBPctFull이 95%이하일 경우 IBPSize = IPS X IBPDataPages / (1024*1024*1024) X 1.05 의 계산 값을 innodb_buffer_pool_size로 설정.

 

 

[참조] - http://dba.stackexchange.com/questions/19164/what-to-set-innodb-buffer-pool-and-why

출처: https://gihyun.com/16 [Note]

 

현재rds 사양기준으로 r5 2X large
aws 자동계산

64GB / 46GB -> 71.8% 할당
innodb_buffer_pool_size 사용률 --> 98.7%

innodb_buffer_pool_size 적정한 사용률은  ?

적정사용률을 유지하기 위해 

인스턴스사양을 한단계 늘리는것과 
innodb_buffer_pool_size 를 75% 이상이 되도록 수동으로 설정하는 것 중 권장되는 방법은 무었일까?

 

-- inodb_buffer_pool_size 계산방법
show global status like 'Innodb_buffer_pool_pages_data'; -- IBPDataPages  2976794
show global status like 'Innodb_buffer_pool_pages_total';-- IBPTotalPages 3014656
SHOW GLOBAL STATUS LIKE 'Innodb_page_size'; -- IPS 16384

 

사용률 95% 이상인경우 : 전체DB서버 RAM의  75% 유지하도록 Innodb_page_size 할당 

select 2976794 * 100.0 / 3014656 as IBPPctFull from dual ; -- 98.7 %  

 

show global variables like 'innodb_buffer%' ;  -- 46GB (기존) 71.8% 할당된상태 

사이즈변경함 : Innodb_page_size (53392123904)   49.7GB 할당   --> 사용률  98.7 %  --> 90.8% 유지

 

사용률 95% 이하인경우

select 16384 * 2976794 / (1024*1024*1024) * 1.05 ; -- Innodb_page_size 할당  47.69 

SMALL

'MySQL-MariaDB' 카테고리의 다른 글

Hash Join  (0) 2020.08.29
MaraDB 지식베이스 - table_open_cache 최적화  (0) 2020.08.23
MySQL 진단시 고려할 부분  (0) 2020.08.22
MySQL 테스트 데이터복제  (0) 2020.08.17
MySQL - Limit 에 대하여...  (0) 2020.06.26

+ Recent posts