Raisons courantes pour lesquelles MySQL ne peut pas être connecté à distance

avant-propos

MySQL est l'une des bases de données les plus populaires à l'heure actuelle, et c'est aussi la base de données de choix pour le stockage persistant des petites et moyennes entreprises.

Différent de notre étude quotidienne, en application pratique, le service MySQL sera monté sur un certain serveur. Si MySQL est déployé sur un certain serveur cloud, de cette manière, il n'est pas très pratique de se connecter au serveur à chaque fois pour faire fonctionner la base de données, puis d'entrer dans l'opération de base de données.

Par conséquent, apprendre à se connecter à MySQL à distance est un cours obligatoire lorsque la base de données est sur le serveur. Ci-dessous, je décrirai trois raisons courantes d'erreurs de connexion à distance.


Raison 1 :

L'autorisation d'accès à distance de MySQL n'est pas ouverte

Si le problème le plus courant d'impossibilité de se connecter à distance est dû au fait que l'autorisation d'accès à distance n'est pas activée.

solution:

Entrez MySQL, utilisez la commande suivante pour afficher l'autorité d'accès à distance, etc., créez simplement l'autorité d'accès à distance de l'utilisateur et actualisez la commande. N'oubliez pas d'actualiser la commande chaque fois que vous modifiez la commande.

Les commandes courantes sont les suivantes :

# 查看当前远程连接的权限
select User,authentication_string,Host from user;
# 创建用户远程访问权限
create user root@'%' identified by '123456';
# 允许指定主机(IP地址)访问权限
grant all privileges on test.* to '用户名'@'ip地址' identified by '密码';
# 无法创建请删除重新试一遍
drop user root@'ip地址';
# 赋予用户操作的全部权限
grant all privileges on *.* to root@'%';
# 刷新指令
flush privileges;

Raison 2 :

Le pare-feu est activé sur le serveur, rendant le port d'accès MySQL inutilisable

Si le pare-feu est activé sur le serveur et que la politique d'ouverture du port MySQL n'est pas définie, vous ne pourrez pas accéder à distance à MySQL via le port correspondant.

solution:

Fermez le pare-feu ou ouvrez le port MySQL correspondant, par exemple, le port MySQL par défaut est 3306, ouvrez-le simplement.

Les commandes courantes sont les suivantes :

# 查看防火墙状态
firewall-cmd --state
# 启动防火墙
systemctl start firewalld.service
# 关闭防火墙
systemctl stop firewalld.service
# 设置开机自启动
systemctl enable firewalld.service
# 开放防火墙端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重新加载配置
firewall-cmd --reload
# 查看开放的防火墙端口
firewall-cmd --zone=public --list-ports

Raison 3 :

La chaîne docker est effacée, rendant MySQL inaccessible

Si votre MySQL est déployé dans un conteneur Docker et que le pare-feu est activé une fois le déploiement terminé. À ce stade, la chaîne Docker peut être effacée. Même si vous activez l'accès à distance, vous ne pouvez accéder à MySQL qu'en entrant dans le conteneur et vous ne pouvez pas y accéder à distance.

solution:

Redémarrez docker, vous pouvez restaurer la chaîne docker.

# 重启docker
systemctl restart docker

Je suppose que tu aimes

Origine blog.csdn.net/weixin_50762970/article/details/126281684
conseillé
Classement