1

I'm reading this thread How large should be mysql innodb_buffer_pool_size?

And perform the querys suggested by RolandoMySQLDBA and I get 307 RIBPS and 264G. That's mean that I need 307GB of RAM?

Currently I have a innodb_buffer_pool_size value of 2097152000 but the server has 128GB of RAM and according to MySQL Workbench Server Status the InnoDB BufferUsage is at 100%

This is wrong rigth? I mean, I must to increase the innodb_buffer_pool_size?

MySQL version is 5.5.29

E_Blue
  • 111
  • 4

1 Answers1

1

Bad! The innodb_buffer_pool_size should never be set bigger than the amount of RAM you have. An general rule is to set it to 70% of available RAM. For 128GB of RAM, 100G is probably fine, assuming you don't have a lot of other applications running on it.

The buffer_pool is a cache. If the data that you actively use is only 20G, then about 20G will work fine, almost as good as 100G. And you don't need to increase your RAM.

If you are repeatedly reading all of your 307G of data and indexes, then you do need 350GB of RAM. But probably you could make some simple changes to avoid such repeated reading, thereby getting down to a civilized "working set", such as 20G. (No, there is no simple way to estimate the "working set size".)

Bottom line: Don't get more RAM. Set the buffer_pool to 100G. Fix any slow queries.

More discussion.

Rick James
  • 80,479
  • 5
  • 52
  • 119