Re: online buffer pool resizing, it’s important to note that you can only resize in multiples of innodb_buffer_pool_chunk_size, and the resulting size must be a multiple of innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances.<p>Because of this and other complications / desired optimizations, I wrote a script [0] to calculate the necessary parameters, given either a desired percentage of system RAM, or an absolute size.<p>[0]: <a href="https://gist.github.com/stephanGarland/cd6a5c667e8406cf9cfb661a12399ddd" rel="nofollow">https://gist.github.com/stephanGarland/cd6a5c667e8406cf9cfb6...</a>
I am not a dba but I have successfully tuned a couple of mysql/mariadb servers in the past with the help of Mysqltuner<p><a href="https://github.com/major/MySQLTuner-perl">https://github.com/major/MySQLTuner-perl</a>
Having a running record on how those buffers and connections are used is always helpful. Percona’s PMM looks great in that sense. But in general tracking those metrics (and more) in your time series based monitoring, whatever solution it is has been pretty useful to me.
SUM_TIMER_WAIT from performance_schema.events_stages_summary_global_by_event_name does not track memory allocations - it's a counter for time spent on that query stage.