sql >> Base de Datos >  >> RDS >> Mysql

Conéctese a la base de datos MySQL remota

No, Charter no podría hacer nada al respecto, porque es un error directamente desde el servidor MySQL , porque su dirección IP no se encuentra entre los hosts configurados para el acceso.

Error: 1130 SQLSTATE: HY000 (ER_HOST_NOT_PRIVILEGED)
Message: Host '%s' is not allowed to connect to this MySQL server

La solución correcta implica entender que el MySQL Access Privilege System trata el nombre de usuario + la dirección IP del host o el nombre donde se origina la conexión como una "cuenta", no como un nombre de usuario en sí mismo.

'foo'@'localhost'   # username foo connecting from the server machine
'foo'@'192.168.1.1' # username foo from IP address 192.168.1.1
'foo'@'192.168.1.%' # username foo from IP address 192.168.1.*
'foo'@'192.168.%'   # username foo from IP address 192.168.*.*
'foo'@'%'           # username foo from any IP address

En el sistema de privilegios de MySQL, estos son 5 "usuarios" diferentes, potencialmente con 5 contraseñas diferentes. Si ningún usuario puede conectarse desde su dirección IP o cualquier dirección comodín que coincida con la suya, este sería el mensaje que recibiría. Esto se explica con más detalle, aquí y aquí .

No hay nada que puedas hacer con mysql cliente de línea de comandos para anular la configuración del servidor, aunque podría usar un túnel SSH para que el servidor piense que se está conectando desde localhost u otro host de confianza, como se sugirió en un comentario.

La solución es que tu amigo te otorgue privilegios en tu dirección con una GRANT declaración . cPanel podría proporcionar una interfaz para hacer esto, no tengo idea, ya que trabajo directamente con MySQL, pero si lo hace, sería cPanel esencialmente escribiendo el mismo GRANT declaración y enviarlo al servidor MySQL para ser ejecutado.