如何在内存表大小中设置mysql max temporary

时间:2015-11-09 13:25:50

标签: mysql temp-tables

我使用以下代码使用临时表:

CREATE TEMPORARY TABLE temp (ID INT(11), Actress varchar(200)) 
ENGINE=MEMORY
SELECT ID, Actress FROM actress_titles order by id;

但是我收到了下一个错误:错误代码1114,表格' temp'已满。 我还尝试通过执行以下代码来增加临时表大小:

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

但是当我读取变量时,大小是99999744字节

(select @@max_heap_table_size;)

所以,我仍然得到1114错误......

如何将临时表的最大大小增加到99mb以上?

1 个答案:

答案 0 :(得分:1)

必须执行以下代码才能设置变量:

SET @@tmp_table_size = 1024 * 1024 * 1024 * 5;
SET @@max_heap_table_size = 1024 * 1024 * 1024 * 5;