Problema usando Banco de Dados Mysql

3 respostas
hodrigohamalho

Olá, estou tendo problema, estou conseguindo conectar normalmente com o banco de dados mysql
utilizando localhost, porém quando coloco o ip da máquina ele não roda.

public static void banco(){
		Connection conn = null;
		String query = "SELECT MAX(ID) FROM cadastro";
		try {
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection( "jdbc:mysql://localhost/almoxarifado","root","abc123");    // problema está quando substituo o aqui por   "jdbc:mysql://192.168.1.103/almoxarifado","root","abc123" 
			Statement stm = conn.createStatement();
			try{
				ResultSet rs = stm.executeQuery(query);
				if (rs.next()) {
					Principal.idAtual = rs.getInt(1);
				}
				try{
					String sql = "SELECT * FROM cadastro where id = "+Principal.idAtual;
					rs = stm.executeQuery(sql);
					if (rs.next()) {
						Principal.lastTitulo = rs.getString("titulo");
					}
				}catch (Exception ex) {
					System.out.println("ERRO quando busca o titulo no BD");
				}
			}catch (Exception ex) {
				System.out.println("Erro no REsult Set!");
			}
		} catch(ClassNotFoundException es) {
			System.out.println("excessão Classe não encontrada");
		} catch(SQLException es) {
			System.out.println("SQL Exception... Erro na consulta:");
		} finally {
			try {
				conn.close();
			} catch(SQLException erro) {
				System.out.println("Erro no fechamento");
			}
		}
	}

des de já, obrigado :slight_smile:

3 Respostas

eduardoromcy

Amigo, o problema está em seu mysql, você têm que liberar os privilégios, nestes privilégios você define o usuário, o ip e senha com nível de acesso, no próprio mysql admin você faz isso, através do localhost é liberado por padrão exatamente para testes, aconselho também você instalar o “phpmyadmin” que facilita em 100% sua vida.

Qualquer coisa estamos aqui. Abraço e boa sorte.
Poste uma resposta caso tenha ajudado.

hodrigohamalho

Bem, mexi em tanta coisa que nem sei ao certo o que realmente foi que deu certo, sei que fiz os seguintes procedimentos.

  1. Instalei o Phpadmin como o amigo eduardo tinha citado.

  2. Lá criei um usuario root com a mesma senha todos os privilégios só que no lugar de 127.0.0.1 coloquei o ip da máquina (192.168.1.103).

  3. O amigo Vitor Pamplona me passou a seguinte url http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html

  4. Olhando no site indicado fiz o seguinte, (usando Kubuntu).
    4.1 - sudo kate /etc/mysql/my.cnf
    4.1.1 - Na linha bind-address = 127.0.0.1 troquei o 127.0.0.1 pelo meu ip (192.168.1.103). Salvei e fechei
    4.2 - Reiniciei o mysql. sudo /etc/init.d/mysql restart
    4.3 - Verifiquei se tava funcionando -> mysql -u root -h 192.168.1.103 -p tudo Ok.

  5. Fiz a alteração no código e conectou sem problemas.

Obrigado a todos que me ajudaram e os q tão sempre na luta ai comigo.

eduardoromcy

Com certeza foi a questão dos privilégios, claro, que não desmerecendo a ajuda do Vitor Pamplona, fico feliz que no final deu certo.

Abraço e tudo de bom.

Criado 18 de fevereiro de 2009
Ultima resposta 19 de fev. de 2009
Respostas 3
Participantes 2