Really frustrating issue. My innodb_buffer_pool_size is set to 32M, and I want to lower it. The variable in my.cnf is actually set to 2M, and I can't find any other overriding configuration files (and yes, it's set in the mysqld block). When I try to set the variable at the command line, I get: ERROR 1238 (HY000): Variable 'innodb_buffer_pool_size' is a read only variable. Where is the 32M coming from??
UPDATE: Is it possible the variable was compiled in and cannot be changed at my.cnf? Or is it possible my Linux distro (openSUSE 11.3) has an include I can't find? And please read below before telling me to change the variable and restart MySQL. That does nothing.