Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL, errore 126:file chiave errato per la tabella

Sembra che la tua query restituisca un set di risultati intermedio di grandi dimensioni che richiede la creazione di una tabella temporanea e che la posizione configurata per le tabelle del disco temporaneo mysql (/tmp) non sia sufficientemente grande per la tabella temporanea risultante.

Potresti provare ad aumentare la dimensione della partizione tmpfs rimontandola:

mount -t tmpfs -o remount,size=1G tmpfs /tmp

Puoi rendere permanente questa modifica modificando /etc/fstab

Se non sei in grado di farlo, puoi provare a cambiare la posizione delle tabelle disktemporary modificando la voce "tmpdir" nel tuo file my.cnf (o addit se non è già lì). Ricorda che la directory che scegli dovrebbe essere scrivibile dall'utente mysql

Potresti anche provare a impedire la creazione di una tabella temporanea su disco aumentando i valori per le opzioni di configurazione di mysql:

tmp_table_size
max_heap_table_size

a valori maggiori. Dovrai aumentare entrambi i parametri di cui sopra

Esempio:

set global tmp_table_size = 1G;
set global max_heap_table_size = 1G;