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

Erro de acesso negado de Java para MySQL


A explicação mais provável é que o usuário não está definido no MySQL.

Observe que no MySQL um usuário é identificado por AMBOS o nome do host (ou endereço IP) do qual o usuário se conecta E o nome de usuário. (NOTA:um '%' pode ser usado como um curinga para o nome do host, para permitir a conexão de qualquer host, mas o MySQL primeiro procurará uma correspondência exata e, em seguida, retornará ao curinga se nenhuma correspondência for encontrada.)
SELECT u.Host,
     , u.User
     , u.Password
  FROM mysql.user u
 WHERE u.User = 'buiud458_raklar'

Esperamos que haja uma linha lá com o valor do Host de 'd24-36-33-148.home1.cgocable.net ', ou uma linha com um curinga de valor de host de '% '.

Você pode comparar a senha que está usando com o valor armazenado na tabela, com a função PASSWORD...
SELECT PASSWORD('mysecret') 

Cada [email protected] podem receber privilégios em bancos de dados individuais.
SELECT d.Host
     , d.User
     , d.Db
  FROM mysql.db d
 WHERE d.User = 'buiud458_raklar'

A maneira mais fácil de configurar um usuário com privilégios em um banco de dados:
CREATE USER 'buiud458_raklar'@'d24-36-33-148.home1.cgocable.net' IDENTIFIED BY 'secret' ;
GRANT ALL PRIVILEGES ON mydb.* TO  'buiud458_raklar'@'d24-36-33-148.home1.cgocable.net' ;

(OBSERVAÇÃO:conceder todos os privilégios a um usuário normalmente viola o princípio da prática recomendada de "privilégio mínimo". Esse usuário pode não exigir todos os privilégios, por exemplo, o privilégio DROP TABLE. Conceder privilégios desnecessariamente é um risco de segurança adicional.)

http://dev.mysql.com/doc/refman /5.5/en/adding-users.html