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

mysqldbcompare acesso negado, mas o comando mysql funciona


Quando você encontrou um erro de acesso negado, significa que a conexão TCP foi estabelecida , mas a senha que você forneceu está errada para'User'@'Host' (um par User-Host é uma conta real para autenticação MySQL, não um único nome de usuário).

Suponha que o servidor MySQL seja executado em 172.0.0.8 e seu endereço local é 172.0.0.5 .
  1. Dê uma olhada em mysql.user por:SELECT * FROM mysql.user\G; . Se você não encontrar nenhum desses dois pares de usuário-host:'root'@'172.0.0.5' e 'root'@'%' , significa que não existe essa conta. Então você falhou.
  2. Verifique também a senha do par usuário-host existente na saída acima.
  3. Agora, a conexão está boa, a conta existe, a senha está correta, a única chance para tal erro é:mysqldbcompare não usou os argumentos que você forneceu!
  4. Tente outra solução alternativa, como:mysqldbcompare --server1=root:[email protected]:3306 --skip-data-check db1:db2

Verifique todas essas coisas passo a passo, e você vai descobrir.