Я столкнулся со странной проблемой с конфигурацией innodb_buffer_pool_size в 5.5.23-1~dotdeb.0 (Debian):
Какое бы новое значение я ни выбрал в my.cnf для innodb_buffer_pool_size (например, 3G, 4G, 8000M), после перезапуска mysql я все равно получаю innodb_buffer_pool_size = 128 M.
Значения других параметров my.cnf можно изменять без каких-либо проблем.
Я также проверил и не обнаружил никаких других my.cnf в файловой системе, кроме /etc/mysql/my.dnf. Так означает ли это, что innodb_buffer_pool_size = 128 M жестко закодирован во время компиляции? Если да, как это исправить? Если нет, что могло вызвать проблему? Спасибо
P.S. Я первыйспросилэтот вопрос задавался на форуме dba, но люди там, похоже, не имеют представления о пакете mysql для Debian.
решение1
Мне нужно было поместить конфигурацию в блок [mysqld] в my.cnf, чтобы изменения вступили в силу.
больше деталейздесь
решение2
Есть ли у вас пробел между числом «128» и «M»?? По крайней мере, в моей установке MySQL пробел между ними запрещен, хотя я проверял это только на версии 5.1.x.
решение3
В моем случае проблема была в следующем innodb_buffer_pool_instances
.
Поскольку я уменьшал innodb_buffer_pool_size
, он стал меньше одного 1 ГБ на экземпляр, поэтому в итоге пришлось округлить его.
Когда я также уменьшилслучаи, это наконец изменилоразмер бассейна!