Jump to content
Fórum Script Brasil
  • 0

dbExpress x Mysql Via Porta


Elói Martins

Question

Estou desenvolvendo uma aplicação em Delphi acessando MySql, com dbExpress. Preciso acessar o MySql por uma porta qualquer (NÃO ADIANTA, TEM QUE SER COM ACESSO VIA PORTA E NÃO PODE SER A PORTA PADRÃO 3306).

Pelo que pesquisei, parece-me que só no Delphi 7 ou posterior que consiguirei, utilizando "Server Port=3308" ou "hostname=localhost:3308", porém testei no Delphi 7 deste jeito e também não funcionou.

Alguém saberia de alguma solução para isto? Também estou pensando em mudar o host do MySql de localhost para alguma outra coisa. Se alguém tiver alguma sugestão neste sentido.

[]s

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0
Estou desenvolvendo uma aplicação em Delphi acessando MySql, com dbExpress. Preciso acessar o MySql por uma porta qualquer (NÃO ADIANTA, TEM QUE SER COM ACESSO VIA PORTA E NÃO PODE SER A PORTA PADRÃO 3306).
Elói, em meios eletrônicos (posts, messengers,...) escrever em caixa alta significa gritar - este até poderia ser o contexto desta última frase. Espero que não. ;)

Mas, a questão em si não me parece tão simples quanto você coloca. Ocorre que os SGBDs como MySQL (3306) ou Firebird/Interbase (3050) utilizam uma porta específica para ficarem "ouvindo" (listen) as requisições via socket. Outros aplicativos "ouvem" outras portas (alguns exemplos).

Tentar estabelecer uma conexão com o banco por outra porta que não seja a que ele esteja "ouvindo", resultará em erro.

Pelo que pesquisei, parece-me que só no Delphi 7 ou posterior que consiguirei, utilizando "Server Port=3308" ou "hostname=localhost:3308", porém testei no Delphi 7 deste jeito e também não funcionou.
e pelo que já mencionei, não deveria mesmo.

Alguém saberia de alguma solução para isto?
você muda a porta padrão, desde que não conflite com outra em uso.

Também estou pensando em mudar o host do MySql de localhost para alguma outra coisa. Se alguém tiver alguma sugestão neste sentido.
o localhost (127.0.0.1) que você está utilizando refere-se a conexão em sua própria máquina onde, muito provavelmente, encontra-se instalado o servidor do banco. Mudar para outra coisa, é meio relativo. No acesso via socket, ou você vai usar o nome da máquina (ex., localhost) ou o endereço IP (ex. 127.0.0.1).

Se você for tentar usar seu programa em outra máquina, em uma rede, não poderá utilizar o localhost na conexão, pois implica que o servidor do banco esteja instado no mesmo local em que o programa "roda".

Não posso afirmar que minhas colocações estejam 100% corretas, mas são baseadas no pouco que penso conhecer. Vamos ver mais alguém nos auxiliar.

Abraços

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.5k
×
×
  • Create New...