mysql

Cómo revisar el estado de una base de datos MySQL que no responde

Foros IT

Comandos básicos para revisar el estado de una base de datos mysql que no responde, y para pararla, arrancarla o reiniciarla desde consola si es necesario. Estos comandos con para un MySQL instalado sobre Linux CentOS:

 

Comprobar estado de mysql

/etc/init.d/mysqld status

Arrancar mysql

/etc/init.d/mysqld start

Parar mysql

/etc/init.d/mysqld stop

Reiniciar mysql

/etc/init.d/mysqld restart

 

Si el estado devuelve algún error, o al reiniciar falla algo, como por ejemplo:

# /etc/init.d/mysqld restart
Stopping mysqld:                                           [  OK  ]
Timeout error occurred trying to start MySQL Daemon.
Starting mysqld:                                           [FAILED]

 

Revisar el fichero de log de MySQL

Para ir a ver directamente las últimas líneas registradas en el log:

# tail /var/log/mysqld.log

Si hay que examinar más líneas, editar el fichero con vi y, una vez dentro, pulsar la tecla 'Escape' y escribir 'G' para ir al final, donde están los registros más recientes:

# vi /var/log/mysqld.log

 

Waiting for table metadata lock en MySql

metadata lock en mysql"Waiting for table metadata lock"... Este error nos lo encontramos en MySql al lanzar una consulta del tipo DDL. Se produce normalmente al lanzar una consulta para modificar un objeto que está siendo usado actualmente en nuestra base de datos. Empezaremos a lidiar con él a partir de la versión 5.5 de MySql y a consecuencia de la introducción de un nuevo tipo de bloqueos: "metadata locking".