我收到The table 'x' is full
之类的消息,其中x
是使用MEMORY存储引擎的表。我有更多的系统内存可用。如何让这个表实际使用更多内存?我提出max_heap_table_size
,但桌子显然仍然“满”。
答案 0 :(得分:1)
您必须重新创建或更改表以提高表的内存限制。来自manual page for max_heap_table_size
:
设置此变量对任何现有的MEMORY表都没有影响,除非使用CREATE TABLE或ALTER TABLE或TRUNCATE TABLE更改的语句重新创建表。
例如:
ALTER TABLE `x` ADD COLUMN `dummy` INT;
ALTER TABLE `x` DROP COLUMN `dummy`;
在运行这些Max_data_length
语句后,在SHOW TABLE STATUS LIKE 'x'\G
(ALTER
的结果)中查找更改。