For performance reason i will put a 188MB table (rebuild every day on disk) with ~ 550.000 datasets into MEMORY table. Whenever i tried this, i run into HEAP error ... My server has 1.3GB free RAM (only 32BIt 4 GB)
Asked
Active
Viewed 98 times
1
-
MyISAM in 2014? That's quaint. Why not use a different data store for this if performance is critical? There's lots of different ways to crack this nut, most of which don't involve desperate measures like you're describing. – tadman Mar 05 '14 at 16:38
-
I know - old system, mysql 5.1, i exactly tried this http://stackoverflow.com/questions/9842720/how-to-make-the-mysql-memory-engine-store-more-data but wont work... – Thomas B Mar 05 '14 at 16:42
-
..btw..which storage engine to use for it while using mylsq 5.1.x ? – Thomas B Mar 06 '14 at 16:31
-
InnoDB should be available, and that engine is often easier to tune. Remember that MySQL 5.5 and 5.6 have *significant* performance improvements, so upgrading might solve a lot of your problems. – tadman Mar 06 '14 at 17:09
-
Switched to mysql 5.5.36 now but still using myisam. I will try the above to get an in memory db. – Thomas B Mar 07 '14 at 08:46
1 Answers
0
Have you checked the configured mysql heap table size? Have a look at this:
mysql> show variables like "%heap%";
+---------------------+----------+
| Variable_name | Value |
+---------------------+----------+
| max_heap_table_size | 16777216 |
+---------------------+----------+
1 row in set (0.02 sec)
The default value is 16MB.

steffen
- 16,138
- 4
- 42
- 81
-
1Yes - i already checked but also temporarily raising up to 2GB heap will result in "out of memory". – Thomas B Mar 05 '14 at 16:37