16 votos

Cómo configurar un servidor MySql para que acepte conexiones remotas?

Estoy instalando un servidor MySql en Ubuntu desktop. Me podía conectar MySql Query Browser para que cuando se especifica el Server Hostname como localhost, pero cuando me reemplazarlo por la IP del equipo deja de funcionar (incluso si el MySql Query Browser se ejecuta en la misma máquina).

Todo lo que he hecho hasta ahora es la eliminación de las iptables, pero parece que no tienen nada que ver con ella.

Aquí está el mensaje de error

No se puede conectar al host '192.168.0.2'.

MySQL Error De 2003, Núm.

No se puede conectar al servidor MySQL en "192.168.0.2' (111)

Haga clic en el "Ping" para ver si hay un problema en la red.

El ping es aceptar, aunque

5voto

Wing Puntos 1529

Además de halfdan respuesta que yo tenía que ejecutar el siguiente comando de mysql:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON databasename.*
TO 'username'@'clientipaddress'
IDENTIFIED BY 'password'

Como he aprendido en

http://forums.mysql.com/read.php?86,23619,41248#msg-41248

0voto

halfdan Puntos 556

Vas a tener que obligar a su mysqld a una IP diferente de la 127.0.0.1.

Abre tu a mi.cnf (/etc/mysql/my.cnf por lo general) y cambiar la línea que dice

bind = 127.0.0.1

a lo que la IP de su máquina se utiliza para conectarse con el mundo exterior. No te olvides de reiniciar el mysqld después de ese cambio.

Los mejores deseos,
Fabian

-1voto

Bomlin Puntos 370

Varios problemas potenciales se explica aquí:

http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html http://dev.mysql.com/doc/refman/5.1/en/access-denied.html

Si desea conceder todos los privilegios para todas las bases de datos, intente

grant all on *.* to 'joe'@'%';

Sin embargo, antes de hacerlo, asegúrese de que tiene un usuario en el "mysql" base de datos "Host" a su dirección IP), en mi caso, mi IP aquí en casa. De manera que el usuario "juan" puede tener más de un registro, uno para cada IP, se podría llamar. Para ver lo que tienes ahí ya:

use mysql;
select Host, User, Password from user where user='joe';`

En mi caso, resultó que mi usuario ahora tenía la IP correcta pero la contraseña también faltaban. Yo cortar-pegar la contraseña (hash o algo) y que esta resuelto a mi en particular de la conexión remota problema:

update user set Password='5493845039485' where user='joe';

Una cosa más, en mi.cnf es posible que desee establecer "port=3306" o cualquier puerto que desea utilizar.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: