2012-07-24 13 views
5

Ho una query di cancellazione che richiede molto tempo. Quando effettuo il check-in processlist, lo stato viene visualizzato come "tavoli di chiusura". Ci vuole molto tempo per chiudere le tabelle.Lo stato MySQL "tabelle di chiusura" richiede il doppio del tempo di processo

Esempio:
corro una query e il tempo totale è 01:42 secondi e dal fatto che 80-90 secondi vengono per chiusura tabella.

Questo sta accadendo per tutte le domande come load data, select e insert.

Di seguito è my.cnf impostazioni:

key_buffer_size = 2G 
sort_buffer_size = 8M 
read_buffer_size = 10M 
read_rnd_buffer_size = 10M 
join_buffer_size = 2M 
bulk_insert_buffer_size = 100M 
myisam_sort_buffer_size = 64M 

#tmp_table_size = 100M 
#max_heap_table_size = 64M 
#max_allowed_packet = 64M 

table_cache=1024 


mio meminfo

[[email protected] ~]# free -m 
      total  used  free  shared buffers  cached 
Mem:   7862  6686  1175   0   11  4091 
-/+ buffers/cache:  2583  5278 
Swap:  15998   18  15980 


La prego di dirmi che tipo di cambiamenti che devo fare in my.cnf file?

+0

_Come nota a margine: _ cercare di evitare di inviare domande duplicate sulla rete _StackExchange_. Per quanto posso vedere hai postato la stessa domanda [qui] (https://dba.stackexchange.com/questions/21446/mysql-closing-tables-taking-double-the-time-of-process). – informatik01

risposta

0

tavoli chiusura

Il thread sta scaricando i dati della tabella modificati sul disco a e chiudere le tabelle usate. Questa dovrebbe essere un'operazione veloce. In caso contrario, è necessario verificare che non si disponga di un disco completo e che il disco non sia molto pesante.

È possibile guardare General MySql Thread States per ulteriori dettagli.

Spero che questo aiuto!

+1

Questa risposta è [copiata da questa risposta] (http: // dba.stackexchange.com/a/21461/78772) - potresti almeno averlo fatto riferimento. –

+0

@ sankar-suda Puoi anche provare a eseguire una versione di [Monyog] (https://www.webyog.com/product/monyog) e controllare se fornisce alcune informazioni. Quando riesco a capire qualcosa di solito alcuni strumenti ti aiutano. –

0

Controllare il valore di queste due variabili che sono anche importanti per migliorare le prestazioni di MySQL in questo caso.

query_cache_size: - Query Cache viene svuotata su ogni inserto, questo ostacolerà le prestazioni di MySQL in quanto aumenta il sovraccarico. Controlla se il valore è troppo alto ed è in Megabyte.

innodb_flush_log_at_trx_commit: - È possibile impostare a 0 (file di log è lavata su disco ogni secondo), 1 (file di registro viene lavata su disco per ogni commit) e 2 (file di log è arrossato per ogni breve intervallo in secondi).

Problemi correlati