martes, 21 de octubre de 2008

MySQL: Acceso remoto como "root"

Esta entrada va dedicada a mi buen amigo Conrad Shepard, que estaba esperando estos consejos como agua de mayo:

Cuando instalamos MySQL, por defecto el acceso como root sólo está permitido desde el localhost (127.0.0.1), pero es muy habitual que queramos administrar nuestras bases de datos desde equipos remotos, ya que lo más habitual es instalar este tipo de aplicaciones en equipos destinados a hacer de servidor.

Vamos a separar la explicación en dos partes:

Para servidores Linux:
Edita el fichero /etc/mysql/my.cnf con tu editor preferido, en mi caso gedit (odio el maldito vi):
sudo gedit /etc/mysql/my.cnf

Comenta las siguientes lineas (pon delante el caracter #) o elimínalas:
  • bind-address=127.0.0.1 (o la IP de tu servidor)
  • skip-networking
Ahora accede a la consola de mysql como root:
mysql -h localhost -u root -p

Introduce tu contraseña de root y a continuación:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'tu_password_de_root' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

Con estos pasos debería funcionar, pero en ocasiones se resiste... prueba lo siguiente:
sudo dpkg-reconfigure mysql-server


Para servidores Windows:

Desde el Asistente para la Configuración de Instancias (MySQL Server Instance Config Wizard), en la Configuración Detallada (Detailed Configuration), llegamos hasta el último paso y aquí nos pide la contraseña para root y hay un checkbox que dice:

Enable root access from remote machines

Queda bastante claro que hay que seleccionarla y finalizar la configuración ;-)

1 comentario:

Unknown dijo...

Por diosssssssss
q no aguanto mássssssss