diegobh
(usa CentOS)
Enviado em 17/12/2013 - 15:41h
dionideivid escreveu:
fala galera, acabei de instalar o mysql no ubunto no computador A por exemplo, fiz uma aplicação em java em um computador B por exemplo, e quero conectar o computador B no pc A, quais as configurações que tenho que fazer uns dizem que tenho que zerar o bind-address=0.0.0.0 e outros dizem para deixar o ip do pc na rede... quais as configurações que tenho que fazer ?
abraço
1- Garanta que no pc A o Firewall não está bloqueando a conexão com o MySQL. (Porta Padrão: 3306)
2- Garanta que todas as bibliotecas do MySQL estão devidamentes intaladas e importadas no pc B.
3- Por parão os usuários do MySQL só podem ser acessados localmente. Garanta que o usuário que está usando na sua aplicação java para conexão tem permissão no MySQL para acessar de outras máquinas. Para isso basta dar o privilégio, no MySQL do pc A:
GRANT ALL ON test.* TO 'usuario'@'%' IDENTIFIED BY 'senha';
Onde:
test.* => DB. Para todos os objetos (tabelas, views, ...) do DB "test"
usuario => usuário do MySQL
% => libera acesso de qualquer máquina
senha => senha do usuário no MySQL.
4- Configure o MySQL para "escutar" conexões externas. Para isso, substitua o ip 127.0.0.1 na linha bind-adress para o ip da máquina do pc A (que está instalado o MYSQL) no arquivo my.cnf e depois reinicie o MySQL:
$ sudo gedit /etc/mysql/my.cnf
$ sudo /etc/init.d/mysql restart
5- Configure uma classe de conexão na sua aplicação java, no pc B. Como por exemplo:
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
public class ConnectionDB {
private static Connection conn = null;
public final static String DRIVER = "com.mysql.jdbc.Driver";
public final static String URL = "jdbc:mysql://IP_DO_PC_C_MYSQL_PC_A:3306/NOME_BANCO";
public final static String USER = "root";
public final static String PASSWD = "SENHA_USER_MYSQL";
private ConnectionDB(){
if (conn == null)
loadDriver();
}
private static void loadDriver() {
try {
Class.forName(DRIVER);
conn = DriverManager.getConnection(URL, USER, PASSWD);
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "FALHA NA CONEXÃO");
e.printStackTrace();
}
}
public static Connection getConnection() {
if (conn == null){
loadDriver();
}
return conn;
}
public static void erroDB () {
conn = null;
}
}
Bem, acho que isso fica bem explicado.