2 votes

CentOS n'autorise pas les connexions MySQL à distance

Lors de l'attribution d'un utilisateur à partir d'une IP distante pour se connecter à une base de données, le système indique qu'il ne parvient pas à se connecter. Il n'arrive pas non plus à se connecter avec root, donc quelque chose ne va pas. L'IP de liaison est désactivée et j'ai également essayé de désactiver iptables, mais sans succès. Le port 3306 est transféré.

Je fonctionne sur Centos 5.6, en utilisant phpmyadmin, mais j'ai également essayé d'attribuer l'utilisateur via la ligne de commande et de créer une nouvelle base de données, mais cela ne fonctionne toujours pas.

J'ai cherché sur Internet et dépanné pendant des heures, sans succès.

1voto

Khaled Points 35208

La description de votre problème n'est pas claire. Vous devez différencier les problèmes causés par des problèmes liés au réseau (pare-feu bloquant le port 3306, adresse de liaison incorrecte, etc.), ou causés par des informations d'identification invalides.

Si vous pouvez vous connecter par telnet à l'IP/port de votre serveur et vous connecter :

$ telnet your_server_ip 3306

Cela signifie que le serveur mysql fonctionne et accepte les connexions sur l'IP spécifiée. L'étape suivante consiste à essayer de se connecter à mysql en utilisant le client mysql :

$ mysql -u user -p -h your_server_ip

Si vous obtenez access denied vous devez vous assurer que vous vous connectez avec le bon nom d'utilisateur/mot de passe.

Für root il n'est pas autorisé (par défaut) de se connecter à la base de données mysql à distance en tant qu'utilisateur. root .

0voto

Lucas Kauffman Points 16740

Vous devriez vous lier à une IP. Si vous voulez vous lier à toutes les IP de la machine sur laquelle vous devez vous lier :

0.0.0.0

0voto

vvens Points 173

Pour autoriser les connexions mysql à distance, vous devez modifier le fichier /etc/my.cnf

localiser [mysqld] et ajoutez la ligne suivante :

bind-address = <server's ip address>

sauvegarder et redémarrer le serveur mysql.

/etc/init.d/mysqld restart

0voto

Big Data Points 114

Vous pouvez essayer les choses suivantes,

  1. Connectez-vous en SSH au serveur sur lequel MySQl est exécuté. Vérifiez que vous pouvez vous connecter à Mysql en tant que "root" depuis le serveur local.

  2. Vérifiez que le port 3306 de Mysql est en écoute.

  3. Vérifiez si IPTABLEs est configuré pour autoriser les connexions entrantes Mysql, sinon vous pouvez arrêter le service IPTABLES et essayer de connecter le serveur MySQL depuis un système distant.

  4. La connexion en tant qu'utilisateur "root" n'est pas une bonne pratique, créez un utilisateur Mysql et accordez tous les privilèges à ce nouvel utilisateur pour qu'il puisse se connecter à la base de données depuis un système distant identifié par un mot de passe.

Exemple:-

ACCORDEZ TOUT SUR *. * TO user@'Your IP Address' IDENTIFIED BY 'PASSWORD' ;

PRIVILÈGES DE CHASSE D'EAU ;

J'espère que cela vous aidera.

Gracias.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X