# Comment installer MySQL sur Windows Server 2022 MySQL est un système de gestion de base de données relationnelle (SGBDR) gratuit et open-source largement utilisé pour les applications web, l'entreposage de données et le commerce électronique. Ce guide complet vous guidera à travers l'installation et la configuration de MySQL sur Windows Server 2022. ## Qu'est-ce que MySQL ? MySQL est l'un des systèmes de bases de données les plus populaires au monde. Il est : - **Gratuit et open-source** (Édition Community) - **Rapide et fiable** pour stocker et récupérer des données - **Compatible** avec de nombreux langages de programmation (PHP, Python, Java, etc.) - **Largement utilisé** par des applications comme WordPress, Joomla et Drupal ## Prérequis Avant d'installer MySQL, assurez-vous d'avoir : - Windows Server 2022 (également compatible avec 2016, 2019) - Privilèges administrateur - Au moins 2 Go de RAM (4 Go ou plus recommandé) - Espace disque suffisant (minimum 1 Go libre) - Connexion Internet pour télécharger l'installateur ## Étape 1 : Télécharger l'installateur MySQL ### Accéder à la page de téléchargement MySQL Rendez-vous sur la page officielle de téléchargement de MySQL : ``` https://dev.mysql.com/downloads/installer/ ``` ### Choisir votre version d'installateur MySQL propose deux options d'installateur : **1. MySQL Installer Web Community (Recommandé pour la plupart des utilisateurs)** - Taille de fichier plus petite (~2-3 Mo) - Télécharge les composants pendant l'installation - Nécessite une connexion Internet pendant l'installation **2. MySQL Installer Community (Installateur complet)** - Taille de fichier plus grande (~400-500 Mo) - Inclut tous les composants - Fonctionne pour l'installation hors ligne ### Télécharger l'installateur 1. Cliquez sur **Download** à côté de votre installateur préféré (32 bits ou 64 bits n'a pas d'importance - l'installateur est uniquement 32 bits) 2. Vous serez redirigé vers une page de connexion/inscription 3. Cliquez sur **"No thanks, just start my download"** en bas pour ignorer la création de compte 4. Enregistrez le fichier `.msi` sur votre serveur ## Étape 2 : Exécuter l'installateur MySQL ### Lancer l'installateur 1. Localisez le fichier `.msi` téléchargé 2. **Faites un clic droit** dessus et sélectionnez **Exécuter en tant qu'administrateur** 3. Si le contrôle de compte d'utilisateur (UAC) vous le demande, cliquez sur **Oui** ### Accepter le contrat de licence 1. Lisez les termes de la licence 2. Cochez **"I accept the license terms"** 3. Cliquez sur **Next** ## Étape 3 : Choisir le type d'installation On vous demandera de sélectionner un type d'installation. Voici les options : ### Options de type d'installation **Developer Default** - Installe MySQL Server, Workbench, Shell, connecteurs et documentation - Bon pour les environnements de développement - ~1 Go d'espace disque requis **Server only** (Recommandé pour les serveurs) - Installe uniquement le serveur MySQL - Installation minimale - Parfait pour les serveurs de production - ~500 Mo d'espace disque requis **Client only** - Installe les outils client sans le serveur - Pour se connecter à des serveurs MySQL distants **Full** - Installe tous les produits MySQL - ~2 Go d'espace disque requis **Custom** - Vous permet de choisir des composants spécifiques - Pour les utilisateurs avancés ### Recommandation Pour un Windows Server 2022, choisissez **"Server only"** pour installer uniquement le serveur de base de données MySQL. Cliquez sur **Next** après avoir sélectionné votre type d'installation. ## Étape 4 : Vérifier les prérequis L'installateur vérifiera les prérequis manquants. Si tout est correct, cliquez sur **Execute** pour commencer l'installation. ### Processus d'installation 1. Cliquez sur **Execute** pour commencer le téléchargement et l'installation des composants MySQL 2. Attendez que l'installation se termine (cela peut prendre quelques minutes) 3. Lorsque terminé, tous les éléments afficheront une coche verte 4. Cliquez sur **Next** pour passer à la configuration ## Étape 5 : Configurer le serveur MySQL Vient maintenant la partie configuration, qui est cruciale pour configurer MySQL correctement. ### Configuration Type et Réseau **Config Type :** - **Development Computer** : Pour un usage personnel avec d'autres applications en cours d'exécution - **Server Computer** : Pour les serveurs exécutant plusieurs applications (Recommandé) - **Dedicated Computer** : Pour les serveurs dédiés uniquement à MySQL **Connectivity :** - **Protocol** : TCP/IP (par défaut) - **Port** : 3306 (par défaut) - conservez ceci sauf si vous avez une raison spécifique de le changer - **Open Windows Firewall port** : Cochez cette case pour autoriser les connexions Cliquez sur **Next** pour continuer. ### Méthode d'authentification On vous demandera de choisir une méthode d'authentification : **Use Strong Password Encryption (Recommandé)** - Utilise la dernière méthode d'authentification - Plus sécurisé - Compatible avec les clients MySQL 8.0+ **Use Legacy Authentication Method** - Pour la compatibilité avec les anciens clients et applications MySQL - Choisissez ceci si vous utilisez des logiciels plus anciens qui le nécessitent **Recommandation** : Utilisez **Strong Password Encryption** sauf si vous avez une exigence de compatibilité spécifique. Cliquez sur **Next**. ### Comptes et rôles C'est ici que vous configurez le mot de passe root de MySQL. **Mot de passe Root :** 1. Entrez un mot de passe fort pour l'utilisateur root 2. Confirmez le mot de passe 3. **Important** : Notez ce mot de passe et conservez-le en sécurité ! **Utilisateurs supplémentaires (Optionnel) :** - Cliquez sur **Add User** pour créer des utilisateurs MySQL supplémentaires - Remplissez : - **User Name** : par exemple, `webapp_user` - **Host** : `localhost` ou `%` (pour n'importe quel hôte) - **Role** : Sélectionnez le rôle approprié (DB Admin, DB Designer, etc.) - **Password** : Définissez un mot de passe fort Cliquez sur **Next**. ### Service Windows Configurez MySQL pour qu'il s'exécute en tant que service Windows : **Paramètres :** - **Configure MySQL Server as a Windows Service** : Cochez cette case - **Windows Service Name** : MySQL80 (ou MySQL suivi du numéro de version) - **Start the MySQL Server at System Startup** : Cochez cette case (recommandé) - **Run Windows Service as** : Standard System Account (recommandé) Cliquez sur **Next**. ### Appliquer la configuration 1. Cliquez sur **Execute** pour appliquer tous les paramètres de configuration 2. Attendez que toutes les étapes de configuration soient terminées (coches vertes) 3. Cliquez sur **Finish** lorsque terminé ### Terminer l'installation 1. Cliquez sur **Next** sur l'écran Product Configuration 2. Cliquez sur **Finish** pour terminer l'installation de MySQL ## Étape 6 : Vérifier l'installation de MySQL ### Méthode 1 : Vérifier le service Windows 1. Appuyez sur **Touche Windows + R** 2. Tapez `services.msc` et appuyez sur Entrée 3. Recherchez **MySQL80** (ou votre nom de service) dans la liste 4. Vérifiez que le statut affiche **En cours d'exécution** ### Méthode 2 : Utilisation de la ligne de commande Ouvrez l'invite de commandes en tant qu'administrateur et exécutez : ```cmd mysql --version ``` Vous devriez voir les informations de version de MySQL. ### Méthode 3 : Se connecter à MySQL Testez la connexion à MySQL : ```cmd mysql -u root -p ``` Entrez votre mot de passe root lorsque demandé. Si réussi, vous verrez l'invite MySQL : ``` mysql> ``` Tapez `exit` pour quitter MySQL. ## Étape 7 : Configurer le pare-feu Windows Si vous devez accéder à MySQL depuis d'autres ordinateurs sur votre réseau : ### Ouvrir le port du pare-feu 1. Appuyez sur **Touche Windows + R** 2. Tapez `wf.msc` et appuyez sur Entrée (Pare-feu Windows) 3. Cliquez sur **Règles de trafic entrant** dans le panneau de gauche 4. Cliquez sur **Nouvelle règle** dans le panneau de droite 5. Sélectionnez **Port** et cliquez sur **Suivant** 6. Sélectionnez **TCP** et entrez **3306** dans Ports locaux spécifiques 7. Cliquez sur **Suivant** 8. Sélectionnez **Autoriser la connexion** 9. Cliquez sur **Suivant** 10. Cochez tous les profils (Domaine, Privé, Public) 11. Cliquez sur **Suivant** 12. Entrez un nom : **Serveur MySQL** 13. Cliquez sur **Terminer** ### Ou utilisez PowerShell : ```powershell New-NetFirewallRule -DisplayName "MySQL Server" -Direction Inbound -Protocol TCP -LocalPort 3306 -Action Allow ``` ## Étape 8 : Tester la connexion MySQL ### Créer votre première base de données Connectez-vous à MySQL : ```cmd mysql -u root -p ``` Entrez votre mot de passe, puis exécutez : ```sql CREATE DATABASE testdb; SHOW DATABASES; USE testdb; ``` ### Créer une table de test ```sql CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL ); SHOW TABLES; ``` ### Insérer des données de test ```sql INSERT INTO users (username, email) VALUES ('john_doe', '[email protected]'); SELECT * FROM users; ``` ## Optionnel : Installer MySQL Workbench MySQL Workbench est un outil graphique pour gérer les bases de données MySQL. Si vous ne l'avez pas installé initialement : 1. Exécutez à nouveau l'installateur MySQL 2. Cliquez sur **Add** sur l'écran principal 3. Sélectionnez **MySQL Workbench** dans la liste 4. Cliquez sur **Next** et **Execute** pour installer ### Utiliser MySQL Workbench 1. Ouvrez **MySQL Workbench** depuis le menu Démarrer 2. Cliquez sur l'icône **+** à côté de "MySQL Connections" 3. Entrez les détails de connexion : - **Connection Name** : Serveur Local - **Hostname** : localhost - **Port** : 3306 - **Username** : root 4. Cliquez sur **Store in Vault** pour enregistrer le mot de passe 5. Cliquez sur **Test Connection** 6. Si réussi, cliquez sur **OK** 7. Double-cliquez sur la connexion pour gérer vos bases de données ## Créer des utilisateurs MySQL supplémentaires C'est une bonne pratique de sécurité de créer des utilisateurs séparés pour les applications au lieu d'utiliser root : ```sql -- Se connecter en tant que root mysql -u root -p -- Créer un nouvel utilisateur CREATE USER 'myapp_user'@'localhost' IDENTIFIED BY 'mot_de_passe_fort'; -- Accorder des privilèges à une base de données spécifique GRANT ALL PRIVILEGES ON myapp_db.* TO 'myapp_user'@'localhost'; -- Appliquer les changements FLUSH PRIVILEGES; -- Vérifier SHOW GRANTS FOR 'myapp_user'@'localhost'; ``` ### Pour l'accès distant Pour autoriser les connexions depuis d'autres ordinateurs : ```sql -- Créer un utilisateur pouvant se connecter depuis n'importe quel hôte CREATE USER 'myapp_user'@'%' IDENTIFIED BY 'mot_de_passe_fort'; GRANT ALL PRIVILEGES ON myapp_db.* TO 'myapp_user'@'%'; FLUSH PRIVILEGES; ``` ## Bonnes pratiques de sécurité ### 1. Utiliser des mots de passe forts Utilisez toujours des mots de passe complexes avec majuscules, minuscules, chiffres et caractères spéciaux. ### 2. Limiter l'accès root distant Ne permettez jamais à root de se connecter à distance : ```sql DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1'); FLUSH PRIVILEGES; ``` ### 3. Supprimer les utilisateurs anonymes ```sql DELETE FROM mysql.user WHERE User=''; FLUSH PRIVILEGES; ``` ### 4. Supprimer la base de données de test ```sql DROP DATABASE IF EXISTS test; DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'; FLUSH PRIVILEGES; ``` ### 5. Sauvegardes régulières Maintenez toujours des sauvegardes régulières de vos bases de données. ## Dépannage ### Le service MySQL ne démarre pas **Solution 1** : Vérifier le journal d'erreurs - Emplacement par défaut : `C:\ProgramData\MySQL\MySQL Server 8.0\Data\` - Recherchez les fichiers `.err` **Solution 2** : Vérifier la configuration - Vérifiez le fichier `my.ini` dans le répertoire d'installation de MySQL **Solution 3** : Réinstaller - Désinstallez MySQL - Supprimez le dossier `C:\ProgramData\MySQL` - Réinstallez ### Impossible de se connecter à MySQL **Vérifiez si le service fonctionne :** ```cmd net start MySQL80 ``` **Vérifiez que le port écoute :** ```cmd netstat -an | findstr 3306 ``` ### Mot de passe root oublié 1. Arrêtez le service MySQL 2. Démarrez MySQL avec l'option skip-grant-tables 3. Réinitialisez le mot de passe 4. Redémarrez MySQL normalement ### Le port 3306 est déjà utilisé Une autre application utilise le port 3306. Soit : - Changez MySQL pour utiliser un port différent pendant l'installation - Arrêtez l'autre application utilisant le port 3306 ## Mettre à jour MySQL Pour mettre à jour MySQL vers une version plus récente : 1. Exécutez l'installateur MySQL 2. Cliquez sur **Upgrade** à côté de MySQL Server 3. Suivez l'assistant de mise à niveau 4. Vos données et configurations seront préservées ## Désinstaller MySQL Pour supprimer complètement MySQL : 1. Ouvrez **Panneau de configuration** > **Programmes et fonctionnalités** 2. Trouvez **MySQL Server** et cliquez sur **Désinstaller** 3. Supprimez les dossiers suivants : - `C:\Program Files\MySQL` - `C:\ProgramData\MySQL` (contient vos bases de données) ## Résumé Pour installer MySQL sur Windows Server 2022 : 1. Téléchargez l'installateur MySQL depuis mysql.com 2. Exécutez l'installateur en tant qu'administrateur 3. Choisissez le type d'installation "Server only" 4. Configurez le serveur (port 3306, mot de passe root) 5. Définissez comme service Windows 6. Ouvrez le port de pare-feu 3306 si nécessaire 7. Testez la connexion avec `mysql -u root -p` MySQL est maintenant prêt à être utilisé pour vos applications !