Pergunte aqui
1

Conectar a banco de dados MySQL remoto via SSH

perguntadas 2019-10-29 23:14:54 +0200

imagem do gravatar de cjcesconetti

updated 2019-10-31 13:20:49 +0200

imagem do gravatar de Schiavinatto

Prezados.

Gostaria de fazer uma 'conexão a uma banco de dados MySQL existente' em um servidor configurado em um segundo computador (ambas as máquinas em minha rede doméstica mesmo). A intenção é usar o LibreOffice Base apenas como 'front-end' para manipular o banco de dados remotamente.

Já estou operando meu DB via conexão 'localhost' (127.0.0.1) no meu desktop do escritório. Consigo fazer a conexão sem problemas usando tanto 'conectar diretamente' quanto usando o 'conector JDBC' (já tenho o driver JDBC MySQL instalado e funcionando).

O problema é que não consigo acessar o servidor configurado no outro PC, na sala. Já configurei o SSH e liberei as portas necessárias no Firewall, tendo acesso ao servidor via terminal, inclusive via MySQL Workbench, mas não com o LibreOffice Base.

Já investi várias horas pesquisando e tentando configurações diversas, já manipulei o Firewall, mas não tive sucesso.

Com o MySQL Workbench eu consigo estabelecer a conexão corretamente, uma vez que há os campos para fornecer os dados (hostname:port) para o endereço via SSH da outra máquina e também, campos para (hostname:port) configurados no servidor MySQL daquela máquina.

Alguém aqui já fez esse tipo de conexão?

Grato, Carlos.

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

Comentários

Não posso garantir que servirá ao que estás pretendendo, mas siga esse link para ver esse exemplo: https://www.techrepublic.com/article/... Caso seja a resposta do que procuras, respondas à mesma e é só encerrar a questão. Não coloquei como resposta, pois uso apenas um computador e nada em servidor remoto, não dá para fazer esse teste aqui.

imagem do gravatar de LeviLevi ( 2019-10-31 04:11:52 +0200 )editar

1 Resposta

2

respondidas 2019-10-31 04:17:55 +0200

imagem do gravatar de Levi

Vou ter que escrever aqui; caso não seja a resposta, avise-me nos comentários para que eu a exclua, se possível. Verifique se esta ligação traz a solução para o que você procura: https://www.techrepublic.com/article/...

editar assinalar como ofensivo Excluir Link mais

Comentários

1

Olá Levi.

Consegui resolver! Basicamente, é isto sim. Configuração de server e client.

Eu tive que fazer uma alteração no arquivo de configuração do MySQL, no meu caso o mysqld.cnf, inserindo, na minha máquina cliente, o bind-address desta mesma máquina (exemplo: 192.168.0.102).

Lado CLIENTE:

[mysqld]
port = 3306
bind-address = 192.168.0.102

Também fiz a alteração no mysqld.cnf da máquina 'servidor', adicionando o bind-address daquela máquina.

Lado SERVIDOR:

[client]
port = 3306

[mysqld]
port = 3306
bind-address = 127.0.0.1
bind-address = 192.168.0.150

Assim, consegui fazer normalmente fazer a conexão com o BandoDados do servidor usando o conector JDBC e os dados:

Nome do banco de dados: BancoDados || Nome do servidor: 192.168.0.150 || Número da porta: 3306 || Classe do driver JDBC MYSQL: m.mysql.jdbc.Driver

Usuário e senha: os que eu criei e adicionei privilégios no server...

Lembrando que é necessário ...(mais)

imagem do gravatar de cjcesconetticjcesconetti ( 2019-10-31 12:21:59 +0200 )editar

No Apache OpenOffice Forum (espanhol), consegui a seguinte resposta:

https://forum.openoffice.org/es/forum...

O que levou ao seguinte tutorial em vídeo:

https://www.youtube.com/watch?v=GIa8u...

Isso foi fundamental. No caso dele, foi usado o EasyPHP, mas é possível utilizar tanto o Xampp para Linux, quanto o mysql-server e mysql nativos instalados via terminal.

imagem do gravatar de cjcesconetticjcesconetti ( 2019-10-31 12:27:21 +0200 )editar
1

Outra informação importante.

Para um usuário externo (ao servidor mysql) ter acesso ao banco de dados desejado, é necessário criar o usuário e garantir os privilégios a este. Caso contrário, não se tem sucesso na tentativa de conexão na tela do LibreOffice Base.

No meu exemplo ficaria assim: Após logar no mysql do servidor (via terminal, ou no phpmyadmin)...

CREATE USER nomeusuario@192.168.0.102 IDENTIFIED BY 'senha1234';

GRANT (ALL) PRIVILEGES ON BancoDados.* TO nomeusuario@192.168.0.102;

FLUSH PRIVILEGES;

Como manipular usuários: http://www.mysqltutorial.org/mysql-cr...

imagem do gravatar de cjcesconetticjcesconetti ( 2019-10-31 20:06:52 +0200 )editar

Ok. Valeu, obrigado!

imagem do gravatar de LeviLevi ( 2019-11-01 02:52:09 +0200 )editar
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2019-10-29 23:14:54 +0200

Lidas: 280 vezes

Última atualização: Oct 31 '19