0 votos positivos 0 votos negativos
716 visitas
em Bancos de Dados (livres) por monitor (11,3K pontos)

Boa tarde a todos!

Eu realizei a instalação do MySQL utilizando o seguinte comando:

apt-get install mysql-server

Verifiquei no computador que o serviço do MySQL está iniciado

No computador que está instalado o MySQL eu consigo acessar o banco normalmente, porém, em outros computadores da rede o MySQL não está sendo encontrado.

Debian 10.7.0 (Stable)
MariaDB 10.3.27

Desde já agradeço a atenção

4 Respostas

2 votos positivos 0 votos negativos
por colaborador (6,8K pontos)
selecionada por
 
Melhor resposta

Olá Diego,

um serviço de rede funciona em um IP e numa porta, por padrão alguns serviços funcionarão apenas para a máquina local, IP 127.0.0.1

Você pode verificar rodando:

ss -ntpl

Se o serviço estiver apenas 127.0.0.1 porta 3306, significa que está atendendo apenas conexões originadas na própria máquina.
Para alterar esse comportamento precisa alterar a configuração do mysql/mariadb

No Debian o arquivo de configuração é: /etc/mysql/mariadb.conf.d/50-server.cnf

Edite o arquivo e altera a linha:
bind-address = 127.0.0.1
para outro IP, se quiser que o serviço atenda a requisições em qualquer interface do servidor use:

bind-address = 0.0.0.0

Reinicie o serviço rodando: systemctl restart mariadb.service
Verifique rodando:
ss -ntpl

Obs. Permitir o acesso externo pode implicar em mais chances de problemas de segurança.

Isso deve ser analisado com cuidado, precisa mesmo de acesso externo?
Qual a finalidade do acesso externo?

por monitor (11,3K pontos)
0 0
Fiz essa configuração e funcionou perfeitamente aqui!  :D

Na verdade era para fins de estudos mesmo. Pois, o MySQL está instalado em um netbook velho que vai funcionar como um "servidor" aqui na minha rede interna rsrs

Muito obrigado pela orientação
1 voto positivo 0 votos negativos
por colaborador (5,1K pontos)

O MySQL penso que vem, por predefinição, com acesso à rede externa.
Possivelmente terás de verificar a tua firewall para abrires a porta do MySQL.

Podes consultar a tua firewall com iptables-save

1 voto positivo 0 votos negativos
por curioso (1,0K pontos)
editado por

Verifique também a configuração do usuário que você esta utilizando para fazer o login.

Se o usuário foi criado para acesso apenas pelo localhost, então você precisa configurar para acessar por outros IPs da sua rede.

Links de refrência:
https://dev.mysql.com/doc/refman/8.0/en/creating-accounts.html
https://mariadb.com/kb/en/create-user/

Att,

1 voto positivo 0 votos negativos
por curioso (1,5K pontos)

Além das dicas que já lhe deram, veja se tem mesmo a necessidade de acesso remoto. Você pode, por exemplo, instalar o phpMyAdmin (ou outros, como o DBeaver Cloud) na máquina servidora e acessar o gerenciador pela web, mas a conexão ao MariaDB se dará localmente.

Se for mesmo configurar acesso remoto (o que eu não recomendo para servidores "de verdade"), faça o que o Kretcheu indicou, mas eu aconselho que você crie usuários específicos para acessarem apenas bancos específicos - não use o root do MariaDB ou algum usuário admin que tenha acesso a tudo. Para criar um usuário com acesso remoto a um determinado banco de dados, no prompt do MariaDB:

GRANT ALL PRIVILEGES ON 'nome_do_banco'.* TO 'usuario'@'%' IDENTIFIED BY 'senha_do_usuario';
Onde o sinal de porcentagem % indica "qualquer host", você também pode colocar IPs específicos ali.

Seja bem-vindo(a) à comunidade debxp, onde você pode fazer perguntas e receber respostas de outros membros.
Atenção pessoal, esta plataforma não é um fórum, embora se pareça muito com um. Neste tipo de ferramenta, o objetivo é fazer e responder perguntas que possam resultar em material de consulta para outras pessoas que tenham as mesmas dúvidas e dificuldades. Portanto, não há sentido em utilizarmos o Ask para socialização, para emitir opiniões pessoais ou para perguntas do tipo "quem usa isso ou aquilo". Espero que compreendam o nosso propósito. :-)
...