Изменить значение max_heap_table_size?

Существует ограничение max_heap_table_size до 16 МБ, так как я могу изменить это значение и где?

2 ответа

Решение

Я уверен, что max_heap_table_size по умолчанию установлен на 16 МБ. Поэтому я бы сначала проверил, на что он настроен, выполнив запрос:

select @@max_heap_table_size;

И тогда вы можете запустить запрос, чтобы установить его выше:

set @@max_heap_table_size=NUMBER_OF_BYTES;

Если вы не можете изменить значение кучи, попробуйте это

Добавьте это в mysql / etc / my.cnf

[mysqld]
tmp_table_size=2G
max_heap_table_size=2G

это покроет перезапуски mysql. Чтобы установить эти значения в mysqld прямо сейчас без перезапуска, запустите:

SET GLOBAL tmp_table_size = 1024 * 1024 * 1024 * 2;
SET GLOBAL max_heap_table_size = 1024 * 1024 * 1024 * 2;

Если вы проверяете вышеуказанные переменные с

SELECT @@max_heap_table_size;

Вы можете заметить, что они не изменяются после SET GLOBAL... заявления. Это связано с тем, что настройки применяются только к новым соединениям с сервером. Установите новое соединение, и вы увидите обновление значений.

Другие вопросы по тегам