Monday, September 17, 2007

Configurar Conexion Remota de Usuarios en MySQL5 en Ubuntu/Debian

MySQL 5 al igual que muchas otras bases de datos no permite conexiones remotas en su instalacion por defecto y hay que realizar ciertos pasos para configurarlo: 1. Editar el archivo /etc/mysql/my.cnf: Reemplazar esto: bind-address = 127.0.0.1 Por lo siguiente: bind-address = 0.0.0.0 Luego de guardar el archivo se procede a reiniciar el servidor de bases de datos MySQL, se puede hacer con el siguiente comando: /etc/init.d/mysql-server restart Aunque con estos paso ya hemos configurado a MySQL Server para permita conexion remota los usuarios no necesariamente puedan conectarse. 2. Permitimos al usuario conexion remota: Iniciamos la utilidad "mysql" en un Terminal del servidor donde esta instalado mysql server con el siguiente comando: mysql -u root -p Colocamos nuestra contraseña de root para mysql y procedemos a configurar a los usuarios para acceso remoto: GRANT ALL PRIVILEGES ON *.* TO root@'%'; FLUSH PRIVILEGES; Con la instruccion anterior se permite al usuario "root" conexion remota desde cualquier PC y aunque esta es la solucion mas sencilla no es la mas segura. Se debe asignar conexion remota por IP o Nombre de dominio. Ejemplo, con la siguiente instruccion se le permite conexion remota al usuario root desde la PC con la direccion IP 192.168.0.5: GRANT ALL PRIVILEGES ON *.* TO root@192.168.0.5 FLUSH PRIVILEGES; Nunca olvide hacer FLUSH PRIVILEGES para que los cambios en el sistema authenticacion y autorizacion de MySQL se hagan efectivos al momento. En los ejemplos anteriores se usa *.* para indicar que el usuario tiene acceso a todas las bases de datos con todos sus objetos(tablas, vistas, funciones) pero es buena practica tambien solo dar acceso a las bases de datos especificas. Ejemplo, con la siguiente instruccion vamos a asignar acceso remoto desde la direccion IP 192.168.0.5 al usuario "root" para la base de datos "administracion" GRANT ALL PRIVILEGES ON administracion.* TO root@192.168.0.5 FLUSH PRIVILEGES; Para mas informacion consulte los siguientes temas:

2 comments:

foxmulder79 said...

Gracias por este tip muy bueno, solo me dio problema lo de los privilegios pero lo pude dominar luego.

Manuel said...

He hecho todos tus pasos pero no me deja conectarme de forma remota