Sei sulla pagina 1di 3

Recuperar (o reset) contraseña de root para MySQL

Posted on December 3rd, 2006 by eihoward


Este procedimiento sirve para recuperar la contraseña de root en MySQL, verificar e enlace para
consideraciones de seguridad al momento de hacer la recuperación de contraseña.
/etc/init.d/mysql stop
/usr/bin/mysql --safe –skip-grant-tables –skip-networking & mysql -u root ( -p )
use mysql;
UPDATE user SET Password=PASSWORD(”miclave”) WHERE user=”root”;
exit
# kill todo los procesos de mysql
/etc/init.d/mysql stop
# Arrancar MySQL otra vez
/etc/init.d/mysql start
Este procedimiento fue traducido de la fuente:
http://www.trustix.org/wiki/index.php/MySQL_recover_root_password

DESDE ROOT PARA COLOCARLE UNA CLAVE:


mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.51a SUSE MySQL RPM

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use mysql;


Database changed
mysql> UPDATE user SET Password=PASSWORD("miclave") WHERE user="root";
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0

mysql> exit

DESDE ROOT PARA CAMBIARSELA SABIENDOSE LA CLAVE


mysql -u root -p mysql
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.0.51a SUSE MySQL RPM

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> UPDATE user SET Password=PASSWORD("") WHERE user="root"; (clave vacia)


Query OK, 3 rows affected (0.01 sec)
Rows matched: 3 Changed: 3 Warnings: 0

mysql> exit
Bye
linux-mv9c:~ # /etc/init.d/mysql stop
Shutting down service MySQL done
linux-mv9c:~ # /etc/init.d/mysql start
Starting service MySQL
# Primero posiciónate en un directorio público de tu servidor web.
INSTALAR PHPMYADMIN
# Descargamos el paquete desde http://www.phpmyadmin.net/home_page/downloads.php, ejemplo:
wget http://ufpr.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-3.1.0-beta1-all-languages.tar.gz
 
# Descomprimimos y renombramos
tar -xpzf phpMyAdmin-3.1.0-beta1-all-languages.tar.gz
mv phpMyAdmin-*/ myadmin/
 
# Configuramos método de autenticación
# Editamos el archivo de configuración, y elegimos método 'http'
cd myadmin/
pico config.sample.inc.php
 
# Una vez estés dentro del archivo, busca esta cadena:
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
 
# Reemplaza el valor de 'cookie' por 'http', por lo que se vería así:
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
 
# Movemos el archivo de configuración para dejar todo listo
mv config.sample.inc.php config.inc.php

Configurar los Script para el nuevo usuario


Una vez borrado el usuario root y recargados los privilegios, phpMyAdmin deja de
funcionar. ¿Por qué? Pues porque phpMyAdmin venía configurado para usuario root sin
password, y éste lo acabamos de eliminar. Entonces ahora tendremos que cambiar dicha
configuración de phpMyAdmin para que funcione con el nuevo usuario.
 3.x-5.x ODBC Drivers Quick & secure access from Linux, Windows, OSX & other Unix OSs...
www.openlinksw.comEnlaces patrocinados
Volvemos a abrir el config.inc.php del phpMyAdmin, y localizamos la primera aparición de
estas variables:
$cfg['Servers'][$i]['auth_type']
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
Y les cambiamos su valor. En la primera ponemos config para que no nos pida contraseña
al entrar (útil si somos el único usuario que va a disponer de este phpMyAdmin), o si
queremos que nos la pida ponemos http para autentificación HTTP o bien cookie para
autentificación y navegación con cookies. A la segunda le damos el nombre de usuario y a
la tercera la contraseña del usuario que acabamos de crear.
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'Pepe';
$cfg['Servers'][$i]['password'] = 'hola';
NOTA: phpMyAdmin tiene un fallo (bug conocido) en esta zona. Al usar autentificación
HTTP, un usuario que acaba de abandonar la sesión no puede volver a entrar con el
mismo nombre. Para solucionarlo, se deben cerrar todas las ventanas del navegador que
estén abiertas, y a continuación si abrimos una nueva ventana y volvemos a intentar
entrar nos debería dejar sin problemas. Si quieres poner contraseña a phpMyAdmin y
para evitar este problema, te recomiendo que de los dos métodos elijas el de cookies.
Si ahora desde tu navegador, y con el Apache y MySQL activos, accedes a la
direcciónhttp://localhost/phpmyadmin/index.php podrás empezar a utilizar phpMyAdmin
con tu nuevo usuario y contraseña. Si elegiste pedir contraseña, cuando accedas a
phpMyAdmin tu usuario y tu contraseña serán las que pusiste al crear el
usuario: Pepe y hola en nuestro caso. Lo primero que harás será crearte una nueva base
de datos para meter ahí lo que quieras.

Creación de nuestro usuario para MySQL


Desde la portada de phpMyAdmin podemos seleccionar el idioma castellano si lo
deseamos.
A continuación, pinchamos en el link Privilegios y en la siguiente pantalla
damos a Agregar nuevo usuario. Ahora vamos a agregar nuestro usuario
y contraseña, que será el que usemos luego en nuestros script locales que hagan
uso de MySQL. Por ejemplo, podemos poner el mismo usuario y contraseña que tenemos
en nuestro Hosting, pues así tendremos menos cosas que recordar. Como ejemplo,
pongamos el usuario Pepe y la contraseña hola.

Introduciremos el nombre de usuario y contraseña, le daremos acceso a "Cualquier


servidor"
(para que se pueda acceder a MySQL desde cualquier IP, incluidas las externas
a nuestro ordenador) o a "Local" (si sólo queremos que se acceda desde nuestro
ordenador donde hemos instalado MySQL) y le daremos todos los permisos y privilegios
(marcando todas las casillas que aparecen).

Potrebbero piacerti anche