Maison > base de données > tutoriel mysql > Pourquoi ne puis-je pas accéder à distance à mon serveur MySQL sur Ubuntu et comment y remédier ?

Pourquoi ne puis-je pas accéder à distance à mon serveur MySQL sur Ubuntu et comment y remédier ?

Mary-Kate Olsen
Libérer: 2024-12-03 04:38:07
original
817 Les gens l'ont consulté

Why Can't I Remotely Access My MySQL Server on Ubuntu, and How Do I Fix It?

Établir des connexions MySQL à distance sur Ubuntu

Énoncé du problème

Les tentatives d'accès à distance à un serveur MySQL échouent avec une erreur d'accès refusé, malgré l'octroi de privilèges à distance à l'utilisateur.

Solution

Configurer MySQL Bind Adresse

Pour accepter les connexions à distance dans MySQL versions 5.6 et inférieures, assurez-vous que la ligne suivante n'est pas commentée dans /etc/mysql/my.cnf :

#Replace xxx with your IP Address 
bind-address        = xxx.xxx.xxx.xxx
Copier après la connexion

Vous pouvez également utiliser bind-address = 0.0.0.0 pour autoriser les connexions depuis n'importe quelle IP.

Pour MySQL versions 5.7 et supérieures, modifiez l'adresse de liaison dans /etc/mysql/mysql.conf.d/mysqld.cnf.

Confirmer la liaison de l'adresse IP

Redémarrez MySQL et vérifiez l'adresse de liaison mise à jour à l'aide de lsof -i -P | grep :3306. Il devrait renvoyer une adresse IP pour votre serveur.

Créer un utilisateur distant et des privilèges

Créez l'utilisateur distant avec les privilèges appropriés dans localhost et % :

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
Copier après la connexion

Grant les autorisations nécessaires :

GRANT ALL ON *.* TO 'myuser'@'localhost';
GRANT ALL ON *.* TO 'myuser'@'%';
Copier après la connexion

Enfin, videz les privilèges et exit :

FLUSH PRIVILEGES; 
EXIT;
Copier après la connexion

Vérifier l'accès à distance

En cas d'échec, recherchez les messages d'erreur supplémentaires ou examinez la configuration my.cnf. Pensez à installer lsof pour le dépannage s'il n'est pas disponible.

Remarque

Si le changement d'adresse de liaison dans my.cnf ne résout pas le problème, essayez de le modifier dans /etc/mysql/ mariadb.conf.d/50-server.cnf, où il a été initialement déclaré.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal