Изменить значение max_heap_table_size? - PullRequest
9 голосов
/ 03 марта 2012

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

Ответы [ 2 ]

16 голосов
/ 03 марта 2012

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

select @@max_heap_table_size;

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

set @@max_heap_table_size=NUMBER_OF_BYTES;

8 голосов
/ 22 марта 2014

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

Добавьте это в 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....Это связано с тем, что настройки применяются только к новым соединениям с сервером.Установите новое соединение, и вы увидите обновление значений.

...