El otro día tras actualizar un VPS, voy a abrir una de las webs alojadas en este servidor y me sale el famoso mensaje “Error al establecer una conexión con la base de datos”. Este es el error que normalmente ocurre cuando no están bien configurada la base de datos en el wp-config.php, pero en este caso solo había actualizado el sistema por lo que, en principio, este no era el caso.
De todas formas lo primero que hice fue revisar la configuración de wp-config.php para cerciorarme que efectivamente nada había cambiado, y así era, todo estaba bien.
Tengo que decir que el VPS tiene instalado un Ubuntu 16.04 con Nginx como servidor web y MariaDB como sistema de gestión de bases de datos. Así que tocaba revisar todo el sistema para ver que había pasado.
Primero revisé que versiones de servidor web y mysql tenía tras la actualización, para ver si había cambiado algo. Para ello escribimos:
nginx -v
para ver la versión de nginx y
mysql --version
para la de mysql.
En este último es donde vi algo raro, me daba la versión actual de mysql pero la distribución no era MariaDB.
mysql Ver 15.1 Distrib mysql-5.1.2, for debian-linux-gnu (x86_64) using readline 5.2
Esta claro que aquí estaba el fallo, por lo que lo siguiente fue intentar entrar a la base de datos con
mysql -u root -p
tras poner la contraseña me salió el siguiente error
ERROR 2002 (HY000): Can't connect to local MySQL server through socket
así que no podía ni siquiera entrar en la base de datos.
Menos mal que siempre tengo copia de seguridad de todo, pero aún así es un verdadero fastidio tener que volver a restaurar todo y con la consiguiente pérdida de tiempo.
Pensé que lo mejor era volver a instalar MariaDB desde cero y que se restaure la configuración, para ello hay que poner:
apt-get -y install mariadb-server
y seguimos los pasos que nos indica. Después ejecutamos
mysql_secure_installation
un script que se utiliza para mejorar la seguridad del servidor y volvemos a seguir las instrucciones.
Una vez terminado volví a ingresar en la base de datos con
mysql -u root -p
Esta vez no me dio error. Lo siguiente listar las bases de datos para ver como estaba todo
show databases;
Y ¡SORPRESA!, estaban todas ahí, como si nada hubiera pasado. Me fui al navegador a comprobar las diferentes web que tengo en ese VPS y todo iba a las mil maravillas. Me acabo de ahorrar el tiempo de volver a instalar todas las bases de datos…
Espero que esto sirva si te ocurre alguna vez lo mismo y ya sabes, si tienes alguna duda dejala en los comentarios.
José Roldán
Diseñador web y consultor SEO
Dios que miedo he pasado.
Reinstale también y solucionado
Gracias por el aporte
Me alegra que te haya servido. Gracias por comentar
Muchas gracias por tu valios ayuda y aporte
Me alegra que te haya sido de utilidad. Gracias a ti.