본문 바로가기
Database/MYSQL

Mysql connection 별 메모리 설정

by 반화넬 2017. 5. 8.
반응형


SELECT
 ( @@key_buffer_size + @@query_cache_size + @@tmp_table_size

 + @@max_connections * (

 @@read_buffer_size + @@read_rnd_buffer_size + @@sort_buffer_size

 + @@join_buffer_size + @@binlog_cache_size + @@thread_stack

 ) ) / 1024/1024/1024 AS MAX_MEMORY_GB


실제메모리사용량   (Actual Used Physical Memory) "Mem: total -(free + buffers + cached) buffers/cache: used"

실제메모리 사용률  ( total - free - buffers - cached) / total (total - buffer/cashe: free) /total"


기본적을 Connection의 메모리 사용량은

Connection 안에  read_buffer_size , read_buffer_size , read_rnd_buffer_size ,sort_buffer_size,join_buffer_size , binlog_cache_size , thread_stack 으로 구성 되어 있어서  설정 값 모두 더한 후 connection 수를 곱하면 됩니다.

  

항목

Default(K)

설정(M)

내용

read_buffer_size                     

256

2

Disk 에서 메모리로 전송 할 Buffer Size

read_rnd_buffer_size

256

4

Table  Scan , orderby sort_buffer_size 사이즈 넘경우 file로 기록 하고
file
의 내용을 빠르게 처리하기 위해 read_rnd_buffer를 사용 한다.
sort_buffer_size 적절하게 조절하게 되면 Disk I/O 줄일수 있음

sort_buffer_size           

256

4

sort  할때 사용하는 메모리 사이즈

join_buffer_size  

128

4

join 할때 사용하는 메모리 사이즈  NL JOIN 사용할때 이용

binlog_cache_size

32

4

#  2M  ~ 8M Default 32K 

thread_stack             

256

0.25

Sp 재귀호출시 사용

 

connection

메모리(Default)

메모리(설정값)

요구메모리량

1000

1.1G

17G

32G

2000

2.2G

35G

64G

3000

3.4G

53G

96G

4000

4.6G

73G

128G




반응형