If you go strictly by that rule of accommodating an addition 10%, here is my suggestion: SELECT CONCAT(CEILING(RIBPS/POWER(1024,pw)),SUBSTR(' KMGT',pw+1,1)) Recommended_InnoDB_Buffer_Pool_Size FROM ( SELECT RIBPS,FLOOR(LOG(RIBPS)/LOG(1024)) pw FROM ( SELECT SUM(data_length+index_length)*1.1*growth RIBPS FROM information_schema.tables AAA, (SELECT 1 growth) BBB WHERE ENGINE='InnoDB' ) AA ) A; This will produce exactly what you need to set [**innodb_buffer_pool_size**][1] in `/etc/my.cnf`. If you want to account for 25% increase in data and indexes over time, please change `(SELECT 1 growth) BBB` to `(SELECT 1.25 growth) BBB` Recently, I answered [**another question like this in the DBA StackExchange**][2]. [1]: http://dev.mysql.com/doc/refman/5.5/en/innodb-parameters.html#sysvar_innodb_buffer_pool_size [2]: http://dba.stackexchange.com/a/27341/877