MySQL: Dépannage

Problèmes courants et solutions pour MySQL

👋 Bienvenue dans la documentation Stackhero !

Stackhero offre un service MySQL cloud entièrement géré qui simplifie le déploiement et la gestion pour vos environnements de production :

  • Connexions et transferts de données illimités.
  • Interface web phpMyAdmin intégrée pour une gestion facile de vos bases de données.
  • Mises à jour sans tracas avec des mises à niveau en un clic.
  • Performance constante et sécurité renforcée sur une infrastructure privée et dédiée.

Avec Stackhero, vous pouvez avoir une base de données MySQL fiable prête en seulement quelques minutes. Passez moins de temps sur la configuration et la maintenance, et concentrez-vous sur le développement de vos applications. Essayez l'hébergement MySQL cloud sur Stackhero dès aujourd'hui.

Si vous rencontrez des timeouts lors de l'utilisation de phpMyAdmin, cela peut être dû à la gestion d'une quantité importante de données. Comme phpMyAdmin fonctionne sur PHP, il peut avoir des difficultés avec des requêtes longues ou des exportations de données volumineuses. Pour gérer des requêtes plus complexes, vous pouvez envisager d'utiliser l'interface en ligne de commande MySQL ou un client non basé sur le web.

MySQL 8 utilise par défaut le système d'authentification caching_sha2_password. Lorsque vous travaillez avec des bibliothèques clientes plus anciennes, vous pouvez rencontrer l'erreur : "Authentication plugin 'caching_sha2_password' cannot be loaded". Pour résoudre ce problème, vous pouvez modifier la méthode d'authentification par défaut pour utiliser le mot de passe natif MySQL.

Dans votre tableau de bord Stackhero, accédez à la section de configuration MySQL et sélectionnez "MySQL native password" comme plugin d'authentification. Ce paramètre affecte l'utilisateur root et tous les nouveaux utilisateurs créés.

Pour les utilisateurs existants (à l'exception de l'utilisateur root), vous pouvez exécuter les commandes suivantes en utilisant l'interface en ligne de commande MySQL ou phpMyAdmin :

USE mysql;
ALTER USER '<userToUpdate>'@'%' IDENTIFIED WITH mysql_native_password BY '<userPassword>';
FLUSH PRIVILEGES;

Si vous rencontrez l'erreur "ERROR 2026 (HY000): SSL connection error: unknown error number", cela indique souvent que votre client ne prend pas en charge les versions modernes de TLS. Les instances MySQL de Stackhero sont configurées pour ne prendre en charge que les protocoles et algorithmes TLS à jour pour une sécurité renforcée.

Cette erreur peut survenir si votre client tente d'utiliser TLS v1.1, qui est obsolète et non pris en charge par les versions modernes de MySQL et MariaDB. Pour résoudre ce problème, vous devrez peut-être mettre à jour votre client MySQL vers une version prenant en charge les derniers protocoles TLS.

Si vous modifiez accidentellement les permissions, changez le mot de passe ou supprimez l'utilisateur "root", vous pouvez redémarrer votre instance MySQL. Cela recréera automatiquement l'utilisateur root avec le mot de passe et les permissions corrects.

Lorsque des données sont supprimées d'une table MySQL, l'espace disque qu'elles occupaient n'est pas immédiatement récupéré. Pour récupérer cet espace, vous pouvez exécuter la commande suivante :

OPTIMIZE TABLE <table>;

Ce processus crée une table temporaire, y transfère les données, puis remplace la table d'origine. Pendant l'optimisation, la table sera verrouillée et temporairement indisponible. La durée de ce verrouillage et le temps total requis dépendent de la taille de la table. Étant donné que cette opération est gourmande en ressources, il est conseillé de la planifier pendant des périodes de faible activité du serveur pour minimiser tout impact sur les performances et la disponibilité.