2012-07-24 11 views
5

Tengo una consulta de eliminación que está tardando mucho tiempo. Cuando controlo en processlist ese estado se muestra como "cerrando tablas". Lleva mucho tiempo cerrar tablas."tablas de cierre" del estado MySQL que lleva el doble del proceso

Ejemplo:
corro una consulta y el tiempo total es 1:42 segundos y en que 80-90 segundo son para mesa de cierre.

Esto está sucediendo para todas las consultas como load data, select y insert.

A continuación se my.cnf ajustes:

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 


Mi 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 


Por favor, dime qué tipo de cambios que necesito hacer en my.cnf ¿archivo?

+0

_ Como nota al margen: _ intente evitar publicar preguntas duplicadas en la red _StackExchange_. Por lo que puedo ver, publicaste la misma pregunta [aquí] (https://dba.stackexchange.com/questions/21446/mysql-closing-tables-taking-double-the-time-of-process). – informatik01

Respuesta

0

mesas de cierre

El hilo está descargando los datos de la tabla modificada al disco a y cierre las tablas usadas. Esta debería ser una operación rápida. De lo contrario, debe verificar que no tenga un disco completo y que el disco no tenga un uso muy intenso.

Puedes encontrar General MySql Thread States para obtener más detalles.

¡Espero que esta ayuda!

+1

Esta respuesta es [copiada de esta respuesta] (http: // dba.stackexchange.com/a/21461/78772) - al menos podría haberlo referenciado. –

+0

@ sankar-suda También puede intentar ejecutar una versión de prueba de [Monyog] (https://www.webyog.com/product/monyog) y verificar si proporciona alguna información. Cuando puedo descubrir algo usualmente algunas herramientas te ayudan. –

0

Compruebe el valor de estas dos variables que también son importantes para mejorar el rendimiento de mysql en este caso.

query_cache_size: - Query Cache se vacía en cada inserción, esto dificultará el rendimiento de MySQL ya que aumenta la sobrecarga. Compruebe si el valor es demasiado alto y está en Megabytes.

innodb_flush_log_at_trx_commit: - Se puede establecer a 0 (archivo de registro está volcado a disco cada segundo), 1 (archivo de registro está volcado a disco para cada confirmación) y 2 (archivo de registro se vacía por cada intervalo corto de segundos).

Cuestiones relacionadas