Como conectar MySql por uma porta local específica

6 respostas
A

Ola
Através do conector JDBC, tem como eu forçar a conexão em uma porta específica no lado local ? ex. : maquina local, porta xxxx… maquina banco de dados, porta default.

6 Respostas

R

Eh soh passar na string de conexao:

jdbc:mysql://localhost:PORTA/<nomebanco>?user=xxx&password=yyyy

Rafael

A

Fala Rafael, tudo certo?

Então, mas aí no caso você está especificando a porta na maquina onde se encontra o banco de dados ( localhost, no seu exemplo. No meu caso um servidor remoto ).

Como especificar a porta que será usada no lado do desktop, na máquina local, onde a aplicação está rodando ?

Abraço
Adriano

A

Adriano,

1º - Voce ira criar uma classe de conecao e criar sua String de conecao com o IP ou com o nome e a porta que estara liberada no servidor.

2º - Voce ira criar um pool de conecao toda vez que voce quiser acessar o banco de dados, para isso basta voce instanciar essa classe e boa, ja esta conectado ao banco, nao precisa alterar o IP e a porta do seu firewall.

blz ?
qq coisa posta ai as duvidas

abs

A

Fala marsola2k, obrigado pela resposta.

Bem, isso que você diz é o que tenho feito :
Tenho uma classe que quando instanciada, conecta com o banco automaticamente.
Mas deixa eu explicar melhor meu caso :

Trata-se de uma aplicação desktop, acessando um banco de dados remoto através de JDBC. Nào estou usando servlets ou nada do genero para estabelecer esta conexão ( talvez no futuro implemente algo neste sentido ) . A classe de conexão está rodando no lado da aplicação.

A porta no servidor, tudo bem. O problema é que a porta usada para conexão no computador local, onde a aplicação desktop está rodando, varia.
Será que tem como eu dizer : use sempre a porta xxx no computador local ?
E acertou, meu problema é com polítcas de firewall :smiley:

[ ]
Adriano

A

Adriano,

A porta no servidor, tudo bem. O problema é que a porta usada para conexão no computador local, onde a aplicação desktop está rodando, varia.
Será que tem como eu dizer : use sempre a porta xxx no computador local ?

Pelo o que eu sei, para vc ter uma conecao com um servidor, vc nao deve ter uma porta determinada e sim um IP ou um host para se comunicarem.

A utilização da porta seria dada pelo banco, nao me lembro qual a porta do SQL, mas vamos supor que ela seja a 4432, ela deve ter uma saida da DMZ para a LAN e da LAN para a DMZ.

Eu so nao entendi o pq das maquinas locais terem portas para comunicar com o servidor de banco. Explique melhor.

abs

A

Marsola2k, excelente explicação.

É minha primeira experiência com banco de dados remoto e acho que eu me confundi :oops:

Na primeira tentativa que tentei me comunicar com o servidor do banco de dados, o firewall da maquina local barrou uma conexão em uma porta local.

Imaginava que a comunicação era feita porta à porta, mas agora vejo que o que foi barrado foi uma conexão tcp. :oops:

O problema que quero evitar é :
Quando instalar o software desktop na maquina do cliente, não precise liberar o acesso genericamente à JRE. Se fizer isso, imagino que qualquer programa feito em java vai poder se conectar na net sem problemas.

Tem como restringir o acesso a net só para determinada aplicação?

Obrigado pela atenção ! :slight_smile:

[ ]
Adriano

Criado 6 de julho de 2005
Ultima resposta 7 de jul. de 2005
Respostas 6
Participantes 3