O MySQL trata os logins como específicos para o host de origem. Você pode ter uma senha diferente da sua máquina doméstica daquela que você usa no próprio servidor, e você pode ter conjuntos totalmente diferentes de permissões concedidas ao mesmo nome de usuário de diferentes hosts de origem.
No PHPMyadmin, o banco de dados está sendo executado no mesmo servidor que o servidor web e, portanto, refere-se a si mesmo como
localhost
, com IP 127.0.0.1
. Sua máquina na qual o Workbench está instalado deve acessar o MySQL com credenciais diferentes do seu [email protected]
. O servidor exige que você conceda acesso ao seu nome de usuário de qualquer host do qual você pretenda se conectar. No PhpMyAdmin, você precisará conceder acesso ao seu banco de dados a partir do host remoto:(Veja também a resposta do Pekka sobre como permitir conexões de qualquer hospedeiro)
GRANT ALL PRIVILEGES on dbname.* TO [email protected]_remote_hostname IDENTIFIED BY 'yourpassword';
Para ver todas as concessões que você tem atualmente em
localhost
para que você possa duplicá-los para o host remoto:SHOW GRANTS FOR [email protected];
Além disso, o servidor MySQL precisa ser configurado para aceitar conexões remotas em primeiro lugar. Isso nem sempre é o caso, especialmente em plataformas de hospedagem na web. No
my.cnf
arquivo, o skip-networking
linha deve ser removida ou comentada. Se não houver skip-networking
linha, você deve comentar a linha:bind-address = 127.0.0.1
... e reinicie o MySQL.