- 1 1. Introduction
- 2 2. Opérations de base MySQL (débutants)
- 3 3. Opérations sur les bases de données
- 4 4. Opérations sur les tables
1. Introduction
MySQL est une base de données relationnelle open‑source largement utilisée parmi les systèmes de gestion de bases de données (SGBD). Elle est particulièrement populaire pour les applications web et les systèmes d’entreprise. Dans cet article, nous expliquerons en détail les commandes essentielles de MySQL et structurerons le contenu afin que les utilisateurs débutants à intermédiaires puissent apprendre en douceur.
1.1 Qu’est‑ce que MySQL ?
MySQL est un logiciel utilisé pour gérer une base de données relationnelle (BDR). Les données sont stockées dans des tables, et vous les manipulez à l’aide du SQL (Structured Query Language). MySQL possède les caractéristiques suivantes :
- Open‑source et gratuit pour tous
- Performance rapide et légère
- Compatible avec de nombreux langages de programmation (comme PHP, Python et Java)
- Adapté à la gestion de bases de données à grande échelle
1.2 Avantages d’apprendre les commandes MySQL
Pour utiliser MySQL efficacement, il est important de comprendre les commandes de base. Les principaux avantages incluent :
- Gestion des données plus efficace : Maîtriser les commandes SQL vous permet de récupérer, mettre à jour et supprimer des données rapidement
- Automatisation des flux de travail : L’utilisation de scripts vous permet d’automatiser les opérations de base de données
- Gestion des erreurs plus fluide : En cas de problème, vous pouvez les résoudre avec les commandes SQL appropriées
1.3 Ce que vous apprendrez dans cet article
Cet article explique en détail les sujets suivants :
- Opérations de base MySQL (démarrage, connexion et opérations sur les bases de données)
- Ajout, récupération, mise à jour et suppression de données (opérations CRUD)
- Gestion des utilisateurs et paramètres de privilèges
- Commandes utiles et dépannage
Ensuite, nous parcourrons chaque section dans l’ordre. Commençons par les opérations de base MySQL.
2. Opérations de base MySQL (débutants)
2.1 Démarrage et connexion à MySQL
2.1.1 Démarrage de MySQL
Comme MySQL fonctionne comme un programme serveur, vous devez d’abord démarrer le serveur. La méthode de démarrage varie selon le système d’exploitation.
Démarrage sous Linux / macOS
Sous Linux et macOS, vous pouvez démarrer MySQL en utilisant la commande systemctl.
sudo systemctl start mysql
Vérifier si MySQL fonctionne
sudo systemctl status mysql
Si vous voyez « active (running) », MySQL fonctionne normalement.
Démarrage sous Windows
Sous Windows, MySQL est souvent exécuté en tant que service, vous pouvez donc utiliser la commande net start.
net start mysql
Ou, si vous utilisez XAMPP, ouvrez le panneau de contrôle XAMPP et cliquez sur « Start » pour « MySQL ».
2.1.2 Connexion à MySQL
Pour vous connecter à MySQL, utilisez la commande mysql. La commande de connexion de base est la suivante :
mysql -u username -p
Connexion en tant qu’utilisateur root
Par défaut, l’utilisateur root est configuré comme administrateur. Vous pouvez vous connecter avec la commande suivante :
mysql -u root -p
Après avoir appuyé sur Entrée, il vous sera demandé de saisir un mot de passe. Si vous saisissez le bon mot de passe, vous pourrez vous connecter à MySQL.
Connexion à un hôte spécifique
Pour vous connecter à un serveur MySQL distant, utilisez l’option -h.
mysql -h hostname -u username -p
Par exemple, pour vous connecter à un serveur MySQL à l’adresse 192.168.1.100, écrivez :
mysql -h 192.168.1.100 -u root -p
Connexion en spécifiant un numéro de port
Le port MySQL par défaut est 3306. S’il a été modifié, vous pouvez le spécifier avec l’option -P.
mysql -h 192.168.1.100 -P 3307 -u root -p
2.2 Commandes MySQL de base
Une fois connecté à MySQL, essayez d’exécuter quelques commandes de base.
2.2.1 Vérifier la version de MySQL
Pour vérifier la version de MySQL que vous utilisez actuellement, exécutez la commande suivante :
SELECT VERSION();
2.2.2 Vérifier la base de données actuelle
Pour vérifier quelle base de données est actuellement sélectionnée, exécutez :
SELECT DATABASE();
Si aucune base de données n’est sélectionnée, NULL est renvoyé.
2.2.3 Lister les bases de données disponibles
Pour lister les bases de données existant dans MySQL, utilisez :
SHOW DATABASES;
2.3 Erreurs courantes et solutions
2.3.1 Erreur « Access denied »
Example error:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Comment corriger :
- Vérifiez que le mot de passe est correct
- Vérifiez et réinitialisez les privilèges
rootALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NEW_PASSWORD'; FLUSH PRIVILEGES;
2.3.2 Erreur « Impossible de se connecter au serveur MySQL sur ‘localhost’ »
Exemple d’erreur :
ERROR 2002 (HY000): Can't connect to MySQL server on 'localhost' (10061)
Comment corriger :
- Vérifiez si MySQL fonctionne (
systemctl status mysql) - Redémarrez MySQL
sudo systemctl restart mysql
2.4 Résumé
Dans cette section, nous avons expliqué comment démarrer MySQL et s’y connecter.
3. Opérations sur les bases de données
Dans MySQL, vous créez une base de données pour gérer les données, puis organisez les informations en plaçant des tables à l’intérieur. Dans cette section, nous expliquerons en détail les opérations de base telles que la création, la sélection, la liste et la suppression des bases de données.
3.1 Création d’une base de données
Pour créer une base de données dans MySQL, utilisez la commande CREATE DATABASE.
3.1.1 Créer une base de données basique
Si vous exécutez la commande SQL suivante, vous pouvez créer une nouvelle base de données nommée my_database.
CREATE DATABASE my_database;
Message lorsque la création réussit
Query OK, 1 row affected (0.01 sec)
3.1.2 Lorsque vous essayez de créer une base de données qui existe déjà
Si la base de données existe déjà, vous verrez une erreur comme celle-ci :
ERROR 1007 (HY000): Can't create database 'my_database'; database exists
Pour éviter cette erreur, il est utile d’ajouter l’option IF NOT EXISTS.
CREATE DATABASE IF NOT EXISTS my_database;
Lorsque vous exécutez cette commande, la base de données n’est créée que si elle n’existe pas déjà.
3.2 Lister les bases de données
Pour vérifier quelles bases de données existent sur le serveur MySQL actuel, utilisez la commande SHOW DATABASES.
SHOW DATABASES;
Exemple de sortie :
+--------------------+
| Database |
+--------------------+
| information_schema |
| my_database |
| mysql |
| performance_schema |
| sys |
+--------------------+
Remarque : Les bases de données système comme mysql et information_schema sont nécessaires à l’administration de MySQL.
3.3 Sélection d’une base de données
Dans MySQL, vous devez sélectionner la base de données que vous souhaitez utiliser. Pour spécifier une base de données, exécutez la commande USE.
USE my_database;
Message en cas de succès
Database changed
Pour confirmer quelle base de données est actuellement sélectionnée, utilisez la commande suivante :
SELECT DATABASE();
Exemple de sortie :
+------------+
| DATABASE() |
+------------+
| my_database |
+------------+
3.4 Suppression d’une base de données
Pour supprimer une base de données dont vous n’avez plus besoin, utilisez la commande DROP DATABASE.
DROP DATABASE my_database;
3.4.1 Notes importantes avant la suppression
- Attention : la suppression d’une base de données supprime toutes les données !
- Pour éviter les erreurs accidentelles, vous pouvez également ajouter
IF EXISTS.DROP DATABASE IF EXISTS my_database;
Cette commande se termine sans erreur même si my_database n’existe pas.
3.5 Erreurs courantes et solutions
3.5.1 Erreur « Access denied for user »
Exemple d’erreur :
ERROR 1044 (42000): Access denied for user 'user_name'@'localhost' to database 'my_database'
Comment corriger
- Accordez les privilèges en utilisant la commande
GRANTGRANT ALL PRIVILEGES ON my_database.* TO 'user_name'@'localhost'; FLUSH PRIVILEGES;
3.5.2 Erreur « Can’t drop database »
Exemple d’erreur :
ERROR 1010 (HY000): Error dropping database (can't rmdir './my_database', errno: 39)
Comment corriger
- Redémarrez MySQL
sudo systemctl restart mysql
- Supprimez d’abord toutes les tables de
my_database, puis exécutezDROP DATABASE.
3.6 Résumé
Dans cette section, vous avez appris comment créer, sélectionner, lister et supprimer des bases de données.
4. Opérations sur les tables
Après avoir créé une base de données, vous devez créer des tables à l’intérieur pour organiser les données. Une table est comme une grille de stockage des données, composée de colonnes et de lignes (enregistrements).
Dans cette section, nous expliquerons en détail les opérations de base telles que créer, vérifier, lister et supprimer des tables.
4.1 Création d’une table
Pour créer une table, utilisez la commande CREATE TABLE. Si vous exécutez le SQL suivant, il crée une table nommée users.
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
4.1.1 Explication de chaque élément lors de la création d’une table
id INT AUTO_INCREMENT PRIMARY KEY- La colonne
idest un entier (INT), s’incrémente automatiquement (AUTO_INCREMENT) et est définie comme clé primaire (PRIMARY KEY). name VARCHAR(50) NOT NULL- La colonne
nameest une chaîne (VARCHAR) de jusqu’à 50 caractères et est obligatoire grâce àNOT NULL. email VARCHAR(100) UNIQUE NOT NULL- La colonne
emailest une chaîne de jusqu’à 100 caractères, et la contrainteUNIQUEempêche les adresses e‑mail en double. created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP- La colonne
created_atdéfinit automatiquement la date/heure actuelle comme valeur par défaut.
Message en cas de succès
Query OK, 0 rows affected (0.02 sec)
4.2 Vérification de la structure d’une table
Pour vérifier la structure d’une table que vous avez créée, utilisez DESC ou SHOW COLUMNS.
DESC users;
Ou
SHOW COLUMNS FROM users;
Exemple de sortie :
+------------+--------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+-------------------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(50) | NO | | NULL | |
| email | varchar(100) | NO | UNI | NULL | |
| created_at | timestamp | YES | | CURRENT_TIMESTAMP | |
+------------+--------------+------+-----+-------------------+----------------+
4.3 Lister les tables
Pour lister les tables existant dans la base de données actuelle, exécutez la commande SHOW TABLES.
SHOW TABLES;
Exemple de sortie :
+------------------+
| Tables_in_mydb |
+------------------+
| users |
| products |
| orders |
+------------------+
4.4 Suppression d’une table
Pour supprimer une table dont vous n’avez plus besoin, utilisez la commande DROP TABLE.
DROP TABLE users;
4.4.1 Notes importantes lors de la suppression d’une table
- Attention : supprimer une table supprime définitivement les données !
- Pour éviter les erreurs lors de la suppression, ajoutez
IF EXISTS.DROP TABLE IF EXISTS users;
Message en cas de succès
Query OK, 0 rows affected (0.01 sec)
4.5 Réinitialisation des données d’une table (supprimer toutes les lignes)
Si vous souhaitez conserver la structure de la table mais supprimer uniquement les données qu’elle contient, utilisez TRUNCATE TABLE.
TRUNCATE TABLE users;
Différence avec DROP TABLE
DROP TABLEsupprime la table elle‑même.TRUNCATE TABLEsupprime uniquement les données et conserve la structure de la table.
4.6 Erreurs courantes et solutions
4.6.1 Erreur « La table existe déjà »
Exemple d’erreur :
ERROR 1050 (42S01): Table 'users' already exists
Comment corriger
- Vérifiez les tables existantes
SHOW TABLES;
- Créez la table avec
IF NOT EXISTSCREATE TABLE IF NOT EXISTS users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
4.6.2 Erreur « Table inconnue »
Exemple d’erreur :
ERROR 1051 (42S02): Unknown table 'users'
Comment corriger
- Vérifiez si la table existe en utilisant
SHOW TABLES; - Si elle n’existe pas, ajoutez
IF EXISTSDROP TABLE IF EXISTS users;
4.7 Résumé
Dans cette section, nous avons couvert les opérations de base sur les tables MySQL : création, vérification et suppression de tables.


