Erro conectando no banco MYSQL

4 respostas
rollei

To precisando de uma ajuda ... tava testando essa aplicacao com um banco MYSQL localmente. Quando fui testar a aplicacao usando um banco que esta em outra maquina ta dando um erro

Access denied for user 'usuario'@'172.25.4.93' (using password: YES)
// isso aqui eu to vendo no debug do eclipse
public class DataBaseDefinitions {
	private static final String dbMySql = "bacno";
	private static final String userMySql = "usuario";
	private static final String passMySql = "senha";
	private static final String forNameMySql = "com.mysql.jdbc.Driver";
	private static final String dbIpMySql = "xxx.xxx.xxx.xxx";
	private static final String dbPortMySql = "3306";
	private static final String driverMySql = "jdbc:mysql://" + dbIpMySql + ":"
	+ dbPortMySql + "/" + dbMySql;
	
	public static String getDbMySql() {
		return dbMySql;
	}
	public static String getUserMySql() {
		return userMySql;
	}
	public static String getPassMySql() {
		return passMySql;
	}
	public static String getForNameMySql() {
		return forNameMySql;
	}
	public static String getDbIpMySql() {
		return dbIpMySql;
	}
	public static String getDbPortMySql() {
		return dbPortMySql;
	}
	public static String getDriverMySql() {
		return driverMySql;
	}
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import br.gov.ce.seplag.agenda.definitions.DataBaseDefinitions;

public class ConnectionFactory {	
	public static Connection getConnection() throws SQLException, ClassNotFoundException {
		Class.forName(DataBaseDefinitions.getForNameMySql());
		System.out.println("Conectando ao banco");
		return DriverManager.getConnection(DataBaseDefinitions.getDriverMySql()
				, DataBaseDefinitions.getUserMySql()
				, DataBaseDefinitions.getPassMySql());
	}
}

aqui ta a classe qua ta chamando a conexao

a.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import br.gov.ce.seplag.agenda.jdbc.ConnectionFactory;
import br.gov.ce.seplag.agenda.jdbc.modelo.Junta;

import com.mysql.jdbc.PreparedStatement;

public class JuntaDAO {
	private Connection connection;

	public JuntaDAO() throws SQLException, ClassNotFoundException {
		this.connection = ConnectionFactory.getConnection();
	}
	
	public List<Junta> getLista () throws SQLException {
		PreparedStatement stmt = (PreparedStatement) this.connection.prepareStatement(
				"SELECT * FROM TB_JUNTA_JNA");
		ResultSet rs = stmt.executeQuery();
		List<Junta> peritos = new ArrayList<Junta>();
		while (rs.next()) {
			Junta junta = new Junta();
			junta.setId(rs.getInt("PK_SEQ_JUNTA_JNA"));
			junta.setNome(rs.getString("TXT_NOME_JNA"));
			junta.setTipo(rs.getString("TXT_TIPO_JNA"));
			peritos.add(junta);
		}
		rs.close();
		stmt.close();
		return peritos;
	}
}

e aqui o trecho de codigo na pagina jsp que ta chamando a classe

<td  width="%5">
			    					<select name="peritoSelect" id="peritoSelect">
										<option id="defaultSelect" value="defaultSelect">Selecione</option>
										<% request.setAttribute("peritos",new JuntaDAO().getLista()); %>
										<c:forEach var="peritos" items="${peritos}">
											<option id="${peritos.id}" value="${peritos.id}">
												${peritos.nome} 
											</option>
										</c:forEach>
									</select>
			    				</td>

Um detalhe importante ... o usuario que eu to usando para acessar o banco e a senha jah existe ... tanto que eu jah testei o acesso ao banco pelo phpmyadmin ... mesmo usuario e senha que usando para entrar no phpmyadmin e acessar o banco eu to usando na minha aplicacao

4 Respostas

W

Tenta trocar o ip por “localhost”
So pra ver o que rola.

Se funcionar vc tem ou deixar localhost ou entao ir no banco e fazer:

grant all privileges on .* to @172.25.4.93 identified by ‘’;

Ou se vc nao quiser dar todas as permissoes, so mudar o grant.

//Daniel

rollei

Assim, eu tenho a replica desse banco na minha maquina local … mesmo nome, mesmo usuario e senha … quando eu coloco localhost funciona …

mas eu preciso pegar desse outro banco.

W

Entao o problema ta no banco remoto. Vc tem que ir la e dara permissao de acesso pro usuario vindo do seu host (172.25.4.93)

rollei

valeu wind, vou dar uma olhada aqui

[]'s

Criado 8 de abril de 2008
Ultima resposta 8 de abr. de 2008
Respostas 4
Participantes 2