MySQL: Utilisation avancée

Comment configurer, optimiser, exporter ou importer des données MySQL

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution MySQL cloud prête à l'emploi qui offre de nombreux avantages, notamment :

  • Connexions et transferts illimités.
  • Interface web phpMyAdmin incluse.
  • Mises à jour faciles en un clic.
  • Performance optimale et sécurité robuste grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il ne faut que 5 minutes pour essayer la solution MySQL cloud hosting de Stackhero !

Chez Stackhero, il n’y a pas de limite codée en dur concernant le nombre de connexions simultanées que votre serveur MySQL peut accepter. Vous avez la flexibilité d’ajuster ce paramètre directement depuis votre tableau de bord Stackhero afin de l’adapter aux besoins de votre application.

Même s’il peut être tentant de définir une valeur très élevée, il est préférable de choisir une limite réaliste. Chaque connexion ouverte consomme de la mémoire (RAM), donc un nombre trop important peut exercer une pression inutile sur votre instance et potentiellement rendre votre base de données instable.

Si votre base de données utilise le moteur de stockage InnoDB, vous pouvez activer l’option « InnoDB Optimizations » dans le tableau de bord Stackhero pour améliorer les performances.

De la même façon, si votre base de données fonctionne avec le moteur MyISAM, l’activation de l’option « MyISAM Optimizations » peut également apporter des gains de performance.

Si vous ne savez pas quel moteur de stockage est utilisé par votre base de données ou quelle option d’optimisation choisir, il est généralement sécuritaire d’activer ces options par défaut. Vous pourrez toujours les ajuster plus tard selon votre charge de travail ou l’utilisation des ressources.

Les outils en ligne de commande MySQL comme mysql et mysqldump sont très utiles pour des tâches telles que l’importation et l’exportation de données.

Une façon simple d’accéder à ces outils est de les exécuter dans un conteneur Docker. Cette approche garde votre environnement local propre et évite d’avoir à faire des installations manuelles.

Si Docker ne fait pas partie de votre workflow, aucun problème. Vous pouvez jeter un œil à Code-Hero sur Stackhero. Cette plateforme de développement accessible via le navigateur vous permet de travailler directement en ligne, sans rien installer localement. Vous pouvez en apprendre davantage et l’essayer en quelques minutes en visitant Code-Hero sur Stackhero.

Pour commencer avec Docker, vous pouvez lancer un conteneur MySQL avec la commande suivante :

docker run -it -v $(pwd):/mnt mysql:<MYSQL_VERSION> /bin/bash

Remplacez <MYSQL_VERSION> par la version dont vous avez besoin. Par exemple, si vous utilisez MySQL 8.0.36-0 sur Stackhero, indiquez 8.0.36 (sans le -0 à la fin).

Une fois votre conteneur lancé, vous pouvez tester la connexion avec cette commande :

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT>

Ici, votre répertoire courant est monté dans /mnt à l’intérieur du conteneur (grâce à l’argument $(pwd):/mnt). Cette configuration facilite le transfert de fichiers entre votre ordinateur et le conteneur. Par exemple, si vous souhaitez sauvegarder une base de données sur votre machine, vous pouvez utiliser :

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > /mnt/<DATABASE>.sql

Pour créer une sauvegarde (ou « dump ») de votre base de données, vous pouvez utiliser l’outil mysqldump directement depuis votre ordinateur. (Consultez la section précédente pour l’exécuter dans Docker si vous préférez.)

Pour exporter une base de données depuis votre instance Stackhero vers votre ordinateur, vous pouvez exécuter :

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > <DATABASE>.sql

Assurez-vous de remplacer <XXXXXX>.stackhero-network.com, <PORT> et <DATABASE> par les informations réelles de votre instance. Après avoir lancé la commande, il vous sera demandé le mot de passe root. L’outil mysqldump enregistrera alors les tables de votre base dans un fichier nommé <DATABASE>.sql.

Pour importer une base de données depuis votre ordinateur vers votre instance Stackhero, vous pouvez utiliser la commande suivante :

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> < yourDump.sql

N’oubliez pas de remplacer yourDump.sql par le nom réel du fichier SQL que vous souhaitez importer.