A nice new feature of MySQL 5.7
While certainly not ready for production here is something to look forward to in MySQL 5.7:
"As of MySQL 5.7.5, the innodb_buffer_pool_size parameter is dynamic, allowing you to resize the buffer pool without restarting the server. The resizing operation, which involves moving pages to a new location in memory, is performed chunks. Chunk size is configurable using the new innodb_buffer_pool_chunk_size configuration option. You can monitor resizing progress using the new Innodb_buffer_pool_resize_status status variable.
See Section 18.104.22.168, “Resizing the InnoDB Buffer Pool Online” for more information." ****
Why is this important? In my experience there is no exact formula for determining the best size of the InnoDB buffer pool. It varies depending on workload and server. If I configure a sixteen gigabyte server to use twelve gigabytes of InnoDB buffer pool and MySQL is only using 80% of the system memory after running for a week what do I do? Currently I have to schedule downtime and restart the server with a new value defined in the my.cnf for the InnoDB buffer pool. This won't be a problem with MySQL 5.7. I will be able to change it on the fly. Now I can tweak a server to use as much memory as is safe without restarting the server potentially multiple times.