Recuperar acceso a Joomla! con PHP y sin PHPMyAdmin

En algunas ocasiones nos encontramos con que no podemos acceder a la instalación Joomla! de alguno de nuestros clientes porque han perdido su usuario y contraseña y tampoco podemos conectarnos de manera remota con alguna de las soluciones como MySQL Workbench y como de costumbre tenemos que acceder con cierta celeridad para evitar algún problema.

Para no perder ese maravilloso tiempo que necesitaríamos para subir PHPmyAdmin os proponemos una sencilla solución basada en PHP con la que todo estará resuelto en cuestión de dos minutos.

 

Instrucciones para recuperar el acceso a nuestra instalación de Joomla!

Las instrucciones para que este script funcione correctamente y recuperemos el acceso a la instalación de Joomla! son bien sencillas, configuramos los datos de conexión a la base datos y en las consultas cambiamos la palabra ‘prefijo’ por el prefijo de nuestra instalación de Joomla! (podréis encontrarlo en vuestro fichero configuration.php).

<?php
// ######### configuramos la conexión a la base de datos ######### 
$con = mysql_connect("servidor","usuario","contrasegna");
$db_selected = mysql_select_db('base_de_datos', $con);
// ######### fin configuración de la conexión a la base de datos ######### 
if (!$con)
  {
  die('Error de conexión a la base de datos: ' . mysql_error());
  }
  
// ######### cambiamos en la consulta 'prefijo' por el prefijo de nuestra 
// instalación de Joomla! ######### 
    $sql = "INSERT INTO `prefijo_users` (`name`, `username`, `password`, 
`params`) VALUES ('admin2', 'admin2',    
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');";
    if (mysql_query($sql,$con))
      {
      echo "Inserción a tablar users OK<br />";

        // ######### cambiamos en la consulta prefijo por el prefijo de nuestra 
//instalación de Joomla! ######### 
        $sql = "INSERT INTO prefijo_user_usergroup_map (user_id,group_id) 
VALUES (LAST_INSERT_ID(),8);";
        if (mysql_query($sql,$con))
          {
          echo "Inserción a tabla prefijo_user_usergroup_map OK<br>
<strong>Usuario creado con éxito</strong>. Recuerda que para acceder debes 
usar estas credenciales:<br />
              usuario: admin2<br />
              contraseña: secret";
          }
        else
          {
          echo "Error insert en insert a la tabla prefijo_user_usergroup_map: " . mysql_error();
          }      
      }
    else
      {
      echo "Error insert en tablar prefijo_users: " . mysql_error();
      }
?>

¿Te ha ayudado éste artículo a recuperar el acceso a tu instalación de Joomla!?

Ayuda a otros usuarios compartiendo el artículo en tus perfiles de las Redes Sociales 😉

¿Te ha gustado? Compártelo!!

Borrar todas las tablas de una base de datos MySQL

Muchas veces tenemos la necesidad de eliminar todas las tablas de una base datos para por ejemplo volver a importar una base de datos que se quedó a medio y no contamos con las herramientas para hacerlo de una manera eficiente.

En este artículo os decimos como eliminarla las tablas en dos sencillos pasos y sin tener que pasar por el tedioso proceso de ir eliminando una a una de vuestra base de datos.

La solución

La mayoría de las soluciones para borrar todas las tablas de nuestra base de datos MySQL que podemos encontrar en la red están basadas en conexiones usando SSH o no están explicadas con la suficiente sencillez.

La solución que os ofrezco consiste en primer lugar en ejecutar esta consulta para conseguir el script que ejecutaremos más tarde:

SELECT CONCAT('drop table ',table_name,'; ') FROM information_schema.tables WHERE table_schema = 'tuBaseDeDatos';

El resultado de esta consulta será algo parecido a:

drop table tabla1; drop table tabla2; ...

En segundo lugar copiamos el resultado de la anterior consulta, la ejecutamos y ¡asunto resuelto!

Para ejecutar las consultas os recomiendo que uséis MySQL Workbench, la herramienta que MySQL pone a nuestra disposición para esta y muchas otras tareas. En el siguiente enlace podéis ver un completo tutorial en el que se explica como establecer una conexión para empezar a trabajar con la base de datos.

¡Ah! ¡Y no te olvides de compartir tu amor por la programación! ¡Comparte el artículo!

¿Te ha gustado? Compártelo!!