Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: NO)
7 respostas
V
vitorbonfim
Boa Noite a todos,
Estou criando uma fábrica de conexões usando a classe ConnectionFactory, criei uma outra classe para testar essa conexão, mas estou tendo o seguinte erro:
Caused by: java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: NO)
Estou usando o banco de dados mysql e já coloquei o .jar do mysql no build path.
importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;publicclassConnectionFactory{publicConnectiongetConnection(){System.out.println("Conectando ao Banco");try{returnDriverManager.getConnection("jdbc:mysql://localhost/fj21","root","");}catch(SQLExceptione){thrownewRuntimeException(e);}}}
A mensagem faz referência a problemas de autenticação.
Pelo que se pode ver, você está tentando autenticar como root sem senha.
É isso mesmo?
blackfalcon
Veja la no arquivo de configuração do hibernate ou nos setProperties, caso voce esteja os utilizando e troque a senha do root para uma string vazia, pois deve ter alguma senha la e no seu banco nao esta configurada isso.
Abraços
V
vitorbonfim
Tenho uma outra dúvida, a senha que uso no banco de dados, tem q ser a mesma senha para usar na string de conexão?
Obrigado!
V
vitorbonfim
Valeu galera, funcionou…
Foi a dica que vcs deram, eu tenho que usar a mesma senha que uso para conectar o banco de dados.
Considerando que você está tendo exatamente o mesmo problema, a stacktrace indica que você está tentando se conectar com o banco de dados com um usuário chamado root e você não está passando nenhuma senha para ele.
Possíveis causas:
O usuário root tem uma senha e você não a passou.
Não existe um usuário chamado root. Pode ser que exista algum usuário que não necessite de senha (nunca vi mas acho que existe).