[Ambiente Linux] Centos7.x instala o MySQL, usa Navicat e outras ferramentas de conexão remota para relatar 2003-Não é possível conectar ao servidor MySQL em (10060 Erro desconhecido)

Conteúdo deste artigo

I. Introdução

Em segundo lugar, o motivo do erro

Três, a solução

3.1 Problemas de rede

3.2 Problemas de permissão (você pode examinar o problema do firewall primeiro)

3.3 O problema do firewall

3.4 Permissões de acesso à porta do servidor

3.5 Número de porta incorreto


I. Introdução

Recentemente, comprei um novo servidor Aliyun Centos7.x. Após instalar o MySQL, posso acessar o MySQL no servidor através do Xshell, mas usando ferramentas de conexão remota como Navicat, recebo um erro 2003-Não é possível conectar ao servidor MySQL em ' '8.131 .154.146' (10060 "Erro desconhecido"), mas foi resolvido após uma tarde inteira. Após uma longa busca, ainda havia um problema no firewall. O objetivo deste blog é apontar uma mensagem clara para aqueles alunos que ainda estão confusos. Road, contornando alguns poços.

Em segundo lugar, o motivo do erro

Os motivos que resumi são os seguintes: (1) problemas de rede, (2) problemas de permissões, (3) problemas de firewall (iptables), (4) permissões de acesso à porta do servidor e (5) números de porta incorretos. Eu estava resolvendo um problema após o outro e, finalmente, não consegui conectar por causa da parede defensiva.

Três, a solução

3.1 Problemas de rede

Digite o nome de usuário e senha para se conectar ao banco de dados MySQL no servidor, conforme mostrado na figura a seguir: prova que não há problema com sua rede, a seguir exclua esta.

3.2 Problemas de permissão (você pode examinar o problema do firewall primeiro)

Faça login no MySQL e verifique se a conta permite conexões remotas. Se você não conseguir se conectar , tente os seguintes métodos.

// Faça login no MySQL, os comandos a seguir não diferenciam maiúsculas de minúsculas

Comando: mysql>   mysql -u root -p

// Qualquer host remoto pode acessar o banco de dados

命令 : mysql> GRANT ALL PRIVILEGES ON *. * TO 'root' @ '%' WITH GRANT OPTION;

// É necessário inserir o comando secundário para tornar a modificação efetiva

Comando: mysql> FLUSH PRIVILEGES;

Depois que a autorização é executada (ou seja, após o segundo comando acima, ERROR 1133 (42000): Não é possível encontrar nenhuma linha correspondente na tabela do usuário) pode ser relatado, conforme mostrado na figura a seguir:

Depois de relatar esse erro, depois de executar o comando flush privileges  , ele pode ser bem-sucedido (você tem sorte, pode prosseguir para a próxima etapa), ou pode não ser bem-sucedido, então você deve alterar o atributo de host do usuário usuário , e, em seguida, execute os privilégios de liberação. Este comando servirá.

3.3 O problema do firewall

Em muitos casos, após a instalação de um aplicativo de serviço web (como tomcat, apache, etc.) no sistema liunx, é necessário permitir que outros computadores acessem o aplicativo e o firewall do sistema linux (centos-7, redhat , etc.) está aberto apenas para o mundo externo por padrão. Porta, pode não abrir a porta 3306 do mysql.

As configurações de porta do host centOs são definidas no arquivo / etc / sysconfig / iptables. (Uso do editor vi: esc: modo de linha de comando / modo de inserção; i: inserir, wq: salvar e sair, q: sair, q !: sair sem salvar)

Coloque -A INPUT -m state --state NOVO -m tcp -p tcp --dport 3306 -j ACCEPT na porta 22. Não coloque-o aleatoriamente.Isso abrirá a porta para conexão remota mysql e então reinicie o iptables. O serviço está ok.

Nota especial: Muitos internautas adicionam essas duas regras à última linha da configuração do firewall, o que faz com que o firewall falhe ao iniciar. A correta deve ser adicionada à regra da porta 22 padrão.

# 80 porta padrão # 3306 porta padrão do MySQL # 8080 Porta padrão do Tomcat

# Configuração de firewall escrita por system-config-firewall 
# A personalização manual deste arquivo não é recomendada. 
* filtro 
: ENTRADA ACEITAR [0: 0] 
: AVANÇAR ACEITAR [0: 0] 
: SAÍDA ACEITAR [0: 0] 
-A ENTRADA -m estado –estado ESTABELECIDO, RELACIONADO -j ACEITAR 
-A ENTRADA -p icmp -j ACEITAR 
- A ENTRADA -i lo -j ACEITAR 
-A ENTRADA -m estado –estado NOVO -m tcp -p tcp –dporta 22 -j ACEITAR 
-A ENTRADA -m estado –estado NOVO -m tcp -p tcp –dporta 80 -j ACEITAR 
-A ENTRADA -m estado –estado NOVO -m tcp -p tcp –dport 3306 -j ACEITAR 
-A ENTRADA -j REJEITAR –rejeitar-com icmp-host-proibido 
-A AVANÇAR -j REJEITAR –rejeitar-com icmp-host- proibido 
COMMIT 

/etc/init.d/iptables restart 

#Finalmente reinicie o firewall para tornar a configuração efetiva. Se a reinicialização falhar ( Falha ao iniciar iptables.service: Unidade não encontrada. ), Você pode verificar meu outro blog: [ambiente Linux] centos7 Falha ao iniciar iptables.service: Unidade não firewall encontrado

 

3.4  permissões de acesso à porta do servidor

Primeiro, verifique se o console do servidor Ali ou Tencent ativou a permissão de acesso à porta 3306. Para saber onde procurar, por favor, use o Baidu. O meu é o seguinte:

 O seguinte é depois de eu adicioná-lo manualmente, consulte a imagem abaixo:

3.5  Número de porta incorreto

Por esse motivo é muito mais fácil de resolver, pode ser resolvido verificando cuidadosamente o número da porta, por isso não vou repetir.

 

 

Considerações finais: Espero ajudar os alunos que estão pisando no fosso.

 

 

fim!

Acho que você gosta

Origin blog.csdn.net/weixin_44299027/article/details/110739974
Recomendado
Clasificación