2012-03-03 10 views

risposta

10

Sono abbastanza sicuro che max_heap_table_size è impostato su circa 16 MB per impostazione predefinita. Quindi vorrei in primo luogo verificare che cosa è impostato eseguendo una query:

select @@max_heap_table_size;

e quindi è possibile eseguire una query per impostare un valore maggiore:

set @@max_heap_table_size=NUMBER_OF_BYTES;

4

Nel caso in cui non si può cambiare il valore del mucchio provare questo

aggiungere questo mysql/etc/my.cnf

[mysqld] 
tmp_table_size=2G 
max_heap_table_size=2G 

questo coprirà mysql riavvia. Per impostare questi valori a mysqld in questo momento senza riavviare eseguire questo:

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

Se si sta controllando le variabili di cui sopra con

SELECT @@max_heap_table_size; 

si può notare che essi non sembrano cambiare in seguito alle dichiarazioni SET GLOBAL... . Questo perché le impostazioni si applicano solo alle nuove connessioni al server. Crea una nuova connessione e vedrai l'aggiornamento dei valori.

Problemi correlati