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 simplifiées en un clic.
  • Performance optimale et sécurité renforcée grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il suffit de 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 possibilité 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 recommandé de choisir une limite adaptée à votre usage. Chaque connexion ouverte consomme de la mémoire (RAM) sur le serveur, donc un nombre trop important peut exercer une pression inutile sur votre instance et 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" depuis 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" permet d'optimiser les performances.

Si vous ne savez pas quel moteur de stockage est utilisé ou quelle option d'optimisation choisir, il est généralement conseillé d'activer ces options par défaut. Vous pourrez toujours les ajuster par la suite en fonction de votre charge de travail ou de votre consommation de ressources.

Les outils en ligne de commande MySQL comme mysql et mysqldump sont très pratiques pour importer ou exporter des données.

Une méthode simple pour accéder à ces outils consiste à les utiliser dans un conteneur Docker. Cette approche permet de garder votre environnement local propre et d'éviter toute installation manuelle.

Si Docker ne fait pas partie de votre workflow, aucun souci. Vous pouvez découvrir Code-Hero sur Stackhero. Cette plateforme de développement accessible depuis votre navigateur vous permet de travailler directement en ligne, sans rien installer sur votre poste. Vous pouvez en savoir plus et l'essayer en quelques minutes en visitant Code-Hero sur Stackhero.

Pour démarrer 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 souhaitée. Par exemple, si vous utilisez MySQL 8.0.36-0 sur Stackhero, indiquez 8.0.36 (sans le -0 à la fin).

Une fois le conteneur lancé, vous pouvez tester la connexion avec la commande suivante :

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, pour 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. (Reportez-vous à la section précédente pour l'utiliser dans Docker si vous le souhaitez.)

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

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

Veillez à remplacer <XXXXXX>.stackhero-network.com, <PORT> et <DATABASE> par les informations 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, utilisez 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 à importer.