Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Conecte-se ao banco de dados MySQL remoto


Não, Charter não poderia fazer nada sobre isso, porque isso é um erro vindo diretamente do servidor MySQL , porque seu endereço IP não está entre os hosts configurados para acesso.
Error: 1130 SQLSTATE: HY000 (ER_HOST_NOT_PRIVILEGED)
Message: Host '%s' is not allowed to connect to this MySQL server

A solução correta envolve entender que o MySQL Access Privilege System trata o nome de usuário + endereço IP ou nome do host onde a conexão está se originando como uma "conta" -- não o nome de usuário por si só.
'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

No sistema de privilégios do MySQL, estes são 5 "usuários" diferentes, potencialmente com 5 senhas diferentes. Se nenhum usuário tiver permissão para se conectar a partir do seu endereço IP ou de qualquer endereço curinga que corresponda ao seu, essa será a mensagem que você receberá. Isso é explicado mais detalhadamente, aqui e aqui .

Não há nada que você possa fazer com o mysql cliente de linha de comando para substituir a configuração do servidor, embora você possa usar um túnel SSH para que o servidor pense que você está se conectando de localhost ou outro host confiável, conforme sugerido em um comentário.

A solução é que seu amigo conceda privilégios a você em seu endereço com um GRANT declaração . O cPanel pode fornecer uma interface para fazer isso - não tenho ideia, já que trabalho diretamente com o MySQL - mas, se o fizer, seria o cPanel essencialmente escrevendo o mesmo GRANT e enviando-o ao servidor MySQL para ser executado.