Maison  >  Article  >  base de données  >  Comment configurer l'accès à distance pour MySQL sur Ubuntu

Comment configurer l'accès à distance pour MySQL sur Ubuntu

PHPz
PHPzoriginal
2023-04-20 10:10:472365parcourir

MySQL est un système de gestion de base de données largement utilisé, accessible localement ou à distance sur un serveur et souvent utilisé pour développer des applications Web. Cependant, nous avons parfois besoin d'un accès à distance à MySQL sur différentes machines, nous devons donc configurer MySQL correctement. Dans cet article, nous expliquerons comment configurer l'accès à distance à MySQL sur le système d'exploitation Ubuntu 18.04.

Étape 1 : Vérifiez si l'accès à distance est activé pour MySQL

Avant de démarrer la configuration, nous devons nous assurer que l'accès à distance est activé pour MySQL. Tout d'abord, nous devons nous connecter au serveur MySQL et voir si l'accès à distance est activé. Ouvrez un terminal et entrez la commande suivante :

sudo mysql -u root -p

Cette commande se connectera à MySQL en tant qu'utilisateur root. Après avoir entré cette commande, votre mot de passe vous sera demandé. Si vous entrez le mot de passe correct, vous entrerez dans le shell MySQL, qui vous permet d'accéder à l'interface de ligne de commande du serveur MySQL. Dans le shell MySQL, nous devons entrer la commande suivante pour voir si l'accès à distance est activé :

SELECT user,authentication_string,host FROM mysql.user;

Si l'accès à distance est activé, vous devriez voir le résultat suivant :

+------------------+-------------------------------+-----------+
| user             | authentication_string         | host      |
+------------------+-------------------------------+-----------+
| root             | *E0AAECBBB187B27AAF667AEC86667 | localhost |
| root             | *E0AAECBBB187B27AAF667AEC86667 | %         |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHAT | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHAT | localhost |
| debian-sys-maint | *456D0C7680DF288F66F7401EABC4B | localhost |
+------------------+-------------------------------+-----------+

Le "%" ici signifie que MySQL autorise n'importe quel Accès utilisateur hôte. Si vous voyez cette sortie, alors MySQL a activé l'accès à distance.

Si vous ne voyez pas le résultat ci-dessus ou si vous voyez un résultat différent de celui ci-dessus, cela signifie que l'accès à distance n'est pas activé pour MySQL. Dans ce cas, vous devez configurer MySQL pour autoriser l'accès à distance.

Étape 2 : Configurer un nouveau compte d'accès à distance pour MySQL

Avant d'activer l'accès à distance, nous devons créer un nouveau compte d'accès à distance pour MySQL. La raison en est que MySQL autorise uniquement l'utilisateur root à accéder au serveur localement par défaut, et les autres utilisateurs doivent utiliser une autorisation ouverte pour y accéder.

Afin de créer un nouveau compte d'accès à distance, nous devons exécuter les commandes suivantes dans le shell MySQL :

CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Ces commandes créeront un nouvel utilisateur nommé "newuser" et attribueront tous les droits d'accès. "%" signifie que l'utilisateur peut accéder au serveur MySQL depuis n'importe quel hôte. Vous pouvez également spécifier des hôtes autorisés à l'aide d'adresses IP ou de noms d'hôte spécifiques. Par exemple, "newuser"@"10.0.0.2" signifie que l'accès au serveur MySQL n'est autorisé qu'à partir de l'hôte avec l'adresse IP "10.0.0.2".

Étape 3 : Configurez le pare-feu pour autoriser le trafic MySQL

Normalement, le serveur MySQL peut être protégé par un pare-feu. Afin d'autoriser l'accès à distance au serveur MySQL, vous devez ouvrir le port MySQL sur le pare-feu (la valeur par défaut est 3306). Pour ce faire, nous devons saisir la commande suivante :

sudo ufw allow 3306/tcp

Cette commande ouvrira un port nommé "3306", permettant au trafic TCP de passer à travers le pare-feu. Cependant, avant de procéder à cette étape, vous devez vous assurer que votre pare-feu est installé et activé.

Étape 4 : Mettre à jour le fichier de configuration MySQL

Afin d'autoriser la connexion à distance au serveur MySQL, vous devez le définir dans le fichier de configuration MySQL. Par défaut, le fichier de configuration MySQL se trouve dans "/etc/mysql/mysql.conf.d/mysqld.cnf". Vous devez ouvrir le fichier en tant qu'administrateur et modifier quelques valeurs comme suit :

bind-address = 0.0.0.0

La commande ci-dessus permettra au serveur MySQL d'accepter les demandes de connexion de n'importe quelle adresse IP. Notez que cela peut être dangereux car cela laisse le serveur MySQL vulnérable à un accès non autorisé. Si vous souhaitez rendre l'accès à distance à MySQL plus sécurisé, vous devez spécifier les adresses IP ou les plages CIDR qui autorisent l'accès.

Étape 5 : Redémarrez le serveur MySQL

Après avoir modifié le fichier de configuration MySQL, vous devez redémarrer le serveur MySQL pour que les modifications prennent effet. Pour redémarrer MySQL, vous pouvez utiliser la commande suivante :

sudo systemctl restart mysql

Si vous voyez le résultat suivant, cela signifie que le serveur MySQL a été redémarré avec succès :

mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-01-21 15:40:22 EST; 17s ago

À ce stade, vous avez configuré avec succès l'accès à distance au serveur MySQL. .

Conclusion

MySQL est un puissant système de gestion de base de données qui vous permet d'y accéder localement ou à distance sur votre serveur. Dans cet article, nous expliquons comment configurer l'accès à distance à MySQL sur le système d'exploitation Ubuntu 18.04. En suivant les étapes ci-dessus, vous pouvez facilement effectuer un accès à distance MySQL entre différentes machines. Mais veuillez noter que vous devez faire attention à la sécurité et protéger votre serveur MySQL contre tout accès non autorisé.

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:
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