Conectar a banco de dados MySQL remoto via SSH

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.

Não posso garantir que servirá ao que estás pretendendo, mas siga esse link para ver esse exemplo: How to connect LibreOffice Base to a remote MySQL database - TechRepublic
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.

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:

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 ter liberado as portas nec

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

https://forum.openoffice.org/es/forum/viewtopic.php?f=31&t=10438&p=44172#p44172

O que levou ao seguinte tutorial em vídeo:

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.

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:

Ok. Valeu, obrigado!