Maison > Opération et maintenance > exploitation et maintenance Linux > Étapes de base pour résoudre les problèmes d'inaccessibilité de MySQL sous Linux

Étapes de base pour résoudre les problèmes d'inaccessibilité de MySQL sous Linux

黄舟
Libérer: 2017-05-31 11:29:11
original
1923 Les gens l'ont consulté

Description du problème


Cet article explique l'impossibilité d'accéder au problème de MySQL sur le serveur cloud ECS Linux Étapes générales de dépannage.

Mesures


  1. Vérifier si le système d'exploitation Linux a été installéMySQL

    $ rpm -qa mysql
    mysql-4.1.7-4.RHEL4.1
    
    # 说明已经安装了 MySQL
    Copier après la connexion

  2. Vérifier le statut
    Détecter l'état d'exécution de MySQL :

    service mysqld status
    Copier après la connexion

  3. Démarrer le service :
    Vous pouvez utiliser trois méthodes pour démarrer MySQL :

    1. Méthode 1 : utilisez la commande service pour démarrer MySQL :

      service mysqld start
      Copier après la connexion


    2. Méthode 2 : Utilisez le script mysqld pour démarrer MySQL :

      /etc/init.d/mysql start
      Copier après la connexion

    3. Méthode 3 : Utilisez l'utilitaire safe_mysqld pour démarrer le service MySQL. Cette méthode peut utiliser les paramètres pertinents :

      safe_mysqld& //使用&表示将safe_mysqld放在后台执行。
      Copier après la connexion


  4. Connexion


  5. Changer le mot de passe

    mysqladmin -u root password
    mysqladmin -u root password 'kaishi'
    Copier après la connexion

    Le "mot de passe" ici est le nouveau mot de passe que nous souhaitons définir. Le système nous demandera de saisir l'ancien mot de passe (si MySQL vient d'être installé, le mot de passe par défaut est vide)

Si la machine locale peut se connecter, mais le client d'autres machines erreur de connexion. Par exemple :

ERROR 1130 (00000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQ
L server
Copier après la connexion

Vérifiez d'abord les paramètres iptables et confirmez que le port 3306 est ouvert :

iptables -A INPUT -p tcp -m tcp --sport 3306 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 3306 -j ACCEPT
service iptables save
Copier après la connexion

S'il est toujours inaccessible, il se peut que ce soit MySQL Problème d'autorisations. Vous pouvez résoudre les problèmes en suivant les étapes suivantes :

  1. Connectez-vous sur cette machine

    mysql -h localhost -u root -pkaishi
    show databases;
    use mysql;
    select Host, User, Password from user;
    +-----------------------+------+-------------------------------------------+
    | Host | User | Password |
    +-----------------------+------+-------------------------------------------+
    | localhost | root | *18F54215F48E644FC4E0F05EC2D39F88D7244B1A |
    | localhost.localdomain | root | |
    | localhost.localdomain | | |
    | localhost | | |
    +-----------------------+------+-------------------------------------------+
    Copier après la connexion


    Vous pouvez voir les résultats ci-dessus. Seul localhost dispose d'autorisations d'accès définies.


  2. Entrez MySQL et créez un nouvel utilisateur :
    Format : accordez des autorisations sur le nom de la table de la base de données. Identifiant de l'hôte @Loginsilié par "mot de passe utilisateur".

    grant select,update,insert,delete on easyview.* to sillycat@192.168.10.103 identified by "kaishi";
    Copier après la connexion

  3. Pour visualiser les résultats, exécutez :

    use mysql;
    select host,user,password from user;
    Copier après la connexion


    Vous pouvez voir que l'utilisateur qui vient d'être créé est déjà dans la table des utilisateurs. Le champ hôte représente l'hôte connecté. Sa valeur peut être une adresse IP ou un nom d'hôte. Changer la valeur du champ hôte en % signifie que vous pouvez vous connecter au serveur MySQL en tant qu'utilisateurutilisateur sur n'importe quel client. machine. Il est recommandé de le définir sur % pendant le développement.


  4. Après avoir modifié les autorisations, vous devez exécuter l'instruction suivante pour prendre effet :

    update user set host = '%' where user = 'sillycat';
    flush privileges;
    Copier après la connexion

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal