Acesso negado MySQL

Amigos no WorkBench tenho usuario root e senha root
e estou logando normalmente.

mas na aplicação recebo o seguinte:

Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:943) at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4113) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1308) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2336) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) at org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545)

Os clientes também não conseguem se logar no sistema.

Aqui tenho um IP fixo com o banco instalado no servidor;

Acredito ser configuração no MySQL.

Poderiam ajudar ?

Obrigado;

O MySQL exige usuários vinculados a um host (ver obs [color=red]#[/color]), não é como qualquer banco de dados que o usuário pode se conectar de qualquer lugar.
Tente criar explicitamente um usuário para cada host: Dê o nome de ‘root@localhost’ ao invés de simplesmente ‘root’. Também pode tentar ‘root@%’ , teoricamente isso habilitaria qualquer host.

[color=red]#[/color] Em algumas situações isso não acontece… Por exemplo, ao conectar do MySQL Workbench. Não entendo totalmente a lógica dessa regra, talvez tenha como pedir para ele ignorar a validação de host, mas não sei como.

Ok Obrigado.

Oi marciofermino, boa tarde.

Por questões de segurança, evite utilizar o usuário ‘root’.

No seu mysql, digite o comando:

GRANT ALL PRIVILEGES ON . TO ‘usuario’@’%’ IDENTIFIED BY ‘senha’

Onde:
. - todas as tabelas
usuario - usuário que você deseja criar/modificar a senha
@’%’ - significa acesso permitido a partir de qualquer host (se quiser apenas acesso local, pode usar ‘localhost’, ou, somente a partir de um ip específico, basta especificar o IP)
senha - senha daquele usuário

A partir daí, basta acessar com o usuário e senha que você criou, a partir dos hosts que vocês autorizou.

Se quiser saber mais, acesse:
http://dev.mysql.com/doc/refman/5.1/en/adding-users.html

Fraternal abraço,

opa, deu certo.

Obrigado.