Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Cómo se hace el debug de mysql?

Estas en el tema de Cómo se hace el debug de mysql? en el foro de Mysql en Foros del Web. Es que soy novata en el tema. Mi base de datos consume mucho. Tengo una copia en local de la misma base y me gustaría ...
  #1 (permalink)  
Antiguo 23/07/2008, 04:41
Avatar de ldp
ldp
 
Fecha de Ingreso: marzo-2005
Ubicación: Por fin, en mi nueva casa!
Mensajes: 617
Antigüedad: 19 años, 1 mes
Puntos: 3
Cómo se hace el debug de mysql?

Es que soy novata en el tema. Mi base de datos consume mucho. Tengo una copia en local de la misma base y me gustaría saber cuáles son los procesos que más consumen, pero no sé cómo se hace eso. El server en local lo tengo instalado con Wamp:

Apache Version : 2.2.8 PHP Version : 5.2.5 MySQL Version : 5.0.51a

Gracias por adelantado ;)
  #2 (permalink)  
Antiguo 23/07/2008, 05:05
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Cómo se hace el debug de mysql?

¿Consume muchos recursos, disco, accesos, comunicación o tiempo de consultas?
Cada una de esas cosas tiene soluciones y medios distintos.
Lo más habitual es:
- Falta de optimización de las consultas.
- Índices inadecuados o deficientes.
- Tablas desnormalizadas o pobremente normalizadas.
- Funciones innecesarias o recarga de tareas inadecuadas a la base.
- Sobrecarga de concurrencia.
- Otras más.

También la afectan errores en las aplicaciones, de las que no se puede responsabilizar a las BBDD :
- Aplicaciones que no estén eficientemente planeadas para las bases de datos.
- Requerimientos de datos innecesarios (el famoso "SELECT * FROM ...").
- Consultas repetitivas.
- Falta de optimización en las conexiones.
- Otros.

Me parece que tendrás que ser un poco más específica en cuanto a cómo se manifiesta esa lentitud y qué recursos ves que se consuman en demasía.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 23/07/2008, 05:25
Avatar de ldp
ldp
 
Fecha de Ingreso: marzo-2005
Ubicación: Por fin, en mi nueva casa!
Mensajes: 617
Antigüedad: 19 años, 1 mes
Puntos: 3
Respuesta: Cómo se hace el debug de mysql?

La verdad es que no tengo ni idea de qué es lo que provoca el exceso de consumo. Esto es lo que me dice el hosting:

Cita:
Load: 54.54, 39.65, 28.63 at 2008-07-19 10:07 (14.1% SQL)
43.29/usr 1.55/ni 9.40/sys 3.91/wa 41.84/id

Apache: 27.8 requests/sec - 0.6 MB/second - 22.6 kB/request
109 requests currently being processed, 37 idle servers
Apache Uptime 1 day 18 hours 30 minutes 20 seconds

Top: 67: gratiswow.com (6: /e107_plugins/links_page/links.php)

67 gratiswow.com
No entiendo si el consumo en la BD es provocado por la página /e107_plugins/links_page/links.php o no tiene que ver.
  #4 (permalink)  
Antiguo 23/07/2008, 06:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Cómo se hace el debug de mysql?

En principio, fíjate en todas las páginas que se hayan cargado en ese tiempo, y si en ellas hay algún tipo de llamadas que entre en loops o secuencias de tipo FOR.. NEXT y que realicen una consulta. Eso implicaría tal vez que para devolver 10 registros, por ejemplo, hace 10 consultas, en vez de hacer una consulta que devuelva 10 registros.
Otro tip sería verificar que no se estén realizando aperturas y cierres de la conexión dentro de una misma sesión de navegación de un usuario.

después avancemos sobre eso.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:25.