innodb_buffer_pool_size параметр в Mysql

Thank you for reading this post, don't forget to subscribe!

Настрой­ка innodb_buffer_pool_size опре­де­ля­ет раз­мер буфе­ра для Innodb движ­ка. Это часть опе­ра­тив­ной памя­ти, в кото­рой Mysql будет хра­нить дан­ные для чте­ния таб­лиц и их индек­сов. Чем боль­ше раз­мер это­го пара­мет­ра, тем мень­ше опе­ра­ций с дис­ком. А зна­чит, тем быст­рее рабо­та­ет Mysql. Напри­мер, для 8Гб сер­ве­ра (уста­нав­ли­ва­ет­ся в my.cnf):

# Для кон­фи­гу­ра­ций с неболь­шим коли­че­ством опе­ра­тив­ки, сто­ит уста­нав­ли­вать зна­че­ние в 80% от всей памяти

Mysql реко­мен­ду­ет уста­нав­ли­вать этот пара­метр в 80% от доступ­ной опе­ра­тив­ной памя­ти. Одна­ко это при­ем­ле­мо на неболь­ших кон­фи­гу­ра­ци­ях (до 8Гб опе­ра­тив­ной памя­ти). Если же речь идет о более мощ­ном желе­зе — мож­но выби­рать зна­че­ния в 90%…95% от всей памяти.

# Для сер­ве­ра с 256Гб опе­ра­тив­ки мож­но сме­ло ста­вить в 95%

Правила выбора значения

  • Чем боль­ше, тем лучше.
  • Если сер­вер ухо­дит в SWAP, сто­ит умень­шать значения.