MySQL Forums
Forum List  »  Spanish

Re: Bloqueos de servidor Mysql en consultas
Posted by: Miguel Perez
Date: May 24, 2007 06:01AM

¿Tienes algún ejemplo de las consultas lentas que bloquean a las demás? Puedes habilitar el slow query log con log-slow-queries, como se explica aquí: http://dev.mysql.com/doc/refman/5.0/es/slow-query-log.html

Lo más probable es que estas consultas lentas estén incurriendo en bloqueos a nivel de tabla que impiden a otros hilos progresar (por ejemplo, si una SELECT lenta bloquea una tabla, otro hilo haciendo UPDATE o DELETE y en algunos casos INSERT en la misma tabla se quedará bloqueado hasta que termine, o bien un UPDATE o DELETE y en algunos casos INSERT lentos bloquearán todas las otras consultas que usen la misma tabla). Esto ocurre o bien porque estás utilizando un motor de almacenamiento con bloqueos a nivel de tabla (típicamente MyISAM) o porque estás bloqueando las tablas manualmente con LOCK TABLES. Deberías considerar utilizar el motor InnoDB para las tablas, si la aplicación lo soporta. Si estás desarrollando la aplicación, deberías evitar los bloqueos de tablas (en tales casos es casi siempre mejor usar tablas InnoDB).

Puedes cambiar una tabla de un motor de almacenamiento a otro con ALTER TABLE tabla ENGINE=motor; . La aplicación tiene que soportar este motor; la mayoría de las cosas son independientes del motor de almacenamiento pero no todas. Por ejemplo, si la tabla tiene índices FULLTEXT, no podrás pasarla a InnoDB.

Un saludo,

Miguel Pérez
Afina Sistemas - Partner de MySQL en España

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Bloqueos de servidor Mysql en consultas
5727
May 24, 2007 06:01AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.