Como conectar MySql por uma porta local específica

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.

Eh soh passar na string de conexao:

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

Rafael

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

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

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

Adriano,

[quote]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 ?[/quote]

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

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