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