Catalogue des Commandes 20/02/2026 09:00:00 angularforall.com

- MySQL : commandes CLI et scripts d'admin DB

Mysql Base-De-Donnees Mysqladmin Mysqldump Mysqlimport Mysqlcheck Mysqld Mysqlbinlog Shell Admin-Mysql Client-Mysql Sql Backup-Mysql Replication

Maîtrisez MySQL pour administrer vos bases de données : commandes CLI, scripting d'automatisation, sauvegardes et gestion complète des bases relationnelles.

mysql
Description :

Client MySQL en ligne de commande

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --database
  • -D
  • --execute
  • -e
  • --batch
  • -B
  • --skip-column-names
  • -N
  • --raw ⚠️
  • -r ⚠️
  • --silent
  • -s
  • --verbose
  • -v
  • --html
  • -H
  • --xml
  • -X
  • --table
  • -t
  • --line-numbers
  • -L
  • --column-names
  • --column-type-info
  • --comments
  • -c
  • --compress
  • -C
  • --protocol
  • --ssl
  • --ssl-ca
  • --ssl-cert
  • --ssl-key
  • --default-character-set
  • --delimiter
  • --help
  • -?
  • --version
  • -V
mysql -u root -p
Description :

Se connecte à MySQL en tant que root

Options :
  • -h
  • --host
  • -P
  • --port
  • -D
  • --database
mysql -u root -p -h localhost -P 3306
Description :

Connexion avec hôte et port spécifiques

Options :
  • -h
  • -P
mysql -u root -p -D ma_base
Description :

Se connecte directement à une base de données

Options :
  • -D
  • --database
mysql -u root -p -e "SHOW DATABASES"
Description :

Exécute une commande SQL sans entrer dans le client

Options :
  • -e
  • --execute
mysql -u root -p < script.sql
Description :

Exécute un fichier SQL

mysql -u root -p -B -e "SELECT * FROM users" > output.txt
Description :

Exporte les résultats en mode batch

Options :
  • -B
  • --batch
  • -N
  • --skip-column-names
mysql -u root -p --html -e "SELECT * FROM users"
Description :

Affiche les résultats au format HTML

Options :
  • --html
  • -H
mysql -u root -p --xml -e "SELECT * FROM users"
Description :

Affiche les résultats au format XML

Options :
  • --xml
  • -X
mysqladmin
Description :

Outil d'administration MySQL

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --verbose
  • -v
  • --silent
  • -s
  • --help
  • --version
mysqladmin -u root -p status
Description :

Affiche le statut du serveur MySQL

Options :
  • -h
  • -P
mysqladmin -u root -p create ma_base
Description :

Crée une base de données

mysqladmin -u root -p drop ma_base
Description :

Supprime une base de données

Options :
  • -f ⚠️
  • --force ⚠️
mysqladmin -u root -p password 'nouveau_mot_de_passe'
Description :

Change le mot de passe root

mysqladmin -u root -p ping
Description :

Vérifie si le serveur MySQL est en ligne

mysqladmin -u root -p processlist
Description :

Affiche les processus MySQL en cours

Options :
  • -i
  • --sleep
mysqladmin -u root -p shutdown
Description :

Arrête le serveur MySQL

mysqladmin -u root -p variables
Description :

Affiche les variables de configuration

mysqladmin -u root -p extended-status
Description :

Affiche les statistiques étendues

Options :
  • -r ⚠️
  • --relative ⚠️
  • -i
  • --sleep
mysqladmin -u root -p flush-privileges
Description :

Recharge les privilèges

mysqladmin -u root -p flush-hosts
Description :

Vide le cache des hôtes

mysqladmin -u root -p flush-logs
Description :

Vide les logs

mysqladmin -u root -p flush-status
Description :

Réinitialise les variables de statut

mysqladmin -u root -p flush-tables
Description :

Vide le cache des tables

mysqladmin -u root -p flush-threads
Description :

Vide le cache des threads

mysqladmin -u root -p refresh
Description :

Vide les tables et rouvre les logs

mysqladmin -u root -p kill id_processus
Description :

Tue un processus MySQL

mysqladmin -u root -p version
Description :

Affiche la version du serveur

mysqldump
Description :

Sauvegarde une base de données MySQL

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --all-databases
  • -A
  • --databases
  • -B
  • --no-data
  • -d
  • --no-create-info
  • -t
  • --routines ⚠️
  • -R ⚠️
  • --triggers
  • --events
  • -E
  • --add-drop-database
  • --add-drop-table
  • --add-drop-trigger
  • --add-locks
  • --allow-keywords
  • --complete-insert
  • -c
  • --compress
  • -C
  • --create-options
  • --default-character-set
  • --disable-keys
  • -K
  • --extended-insert
  • -e
  • --fields-terminated-by ⚠️
  • --fields-enclosed-by ⚠️
  • --fields-optionally-enclosed-by ⚠️
  • --fields-escaped-by ⚠️
  • --flush-logs ⚠️
  • -F ⚠️
  • --flush-privileges ⚠️
  • --force ⚠️
  • -f ⚠️
  • --hex-blob
  • --ignore-table
  • --insert-ignore
  • --lock-all-tables
  • -x
  • --lock-tables
  • -l
  • --log-error
  • --master-data
  • --max-allowed-packet
  • --net-buffer-length
  • --no-autocommit
  • --no-create-db
  • -n
  • --no-set-names
  • -N
  • --opt
  • --order-by-primary
  • --port
  • -P
  • --protocol
  • --quick
  • -q
  • --quote-names
  • -Q
  • --replace ⚠️
  • --result-file ⚠️
  • -r ⚠️
  • --routines ⚠️
  • -R ⚠️
  • --set-charset
  • --single-transaction
  • --skip-add-drop-table
  • --skip-add-locks
  • --skip-comments
  • --skip-compact
  • --skip-disable-keys
  • --skip-extended-insert
  • --skip-opt
  • --skip-quick
  • --skip-quote-names
  • --skip-set-charset
  • --skip-triggers
  • --skip-tz-utc
  • --tab
  • -T
  • --tables
  • --triggers
  • --tz-utc
  • --verbose
  • -v
  • --version
  • -V
  • --where
  • -w
  • --xml
  • -X
mysqldump -u root -p ma_base > sauvegarde.sql
Description :

Sauvegarde une base de données

Options :
  • --routines ⚠️
  • -R ⚠️
  • --triggers
mysqldump -u root -p --all-databases > toutes_bases.sql
Description :

Sauvegarde toutes les bases de données

Options :
  • -A
  • --all-databases
mysqldump -u root -p --databases base1 base2 > sauvegarde.sql
Description :

Sauvegarde plusieurs bases spécifiques

Options :
  • -B
  • --databases
mysqldump -u root -p --no-data ma_base > structure.sql
Description :

Sauvegarde uniquement la structure (sans données)

Options :
  • -d
  • --no-data
mysqldump -u root -p --no-create-info ma_base > donnees.sql
Description :

Sauvegarde uniquement les données (sans structure)

Options :
  • -t
  • --no-create-info
mysqldump -u root -p --single-transaction ma_base > sauvegarde.sql
Description :

Sauvegarde cohérente sans verrouiller les tables (InnoDB)

Options :
  • --single-transaction
mysqldump -u root -p --routines --triggers ma_base > sauvegarde_complete.sql
Description :

Sauvegarde avec procédures stockées et triggers

Options :
  • -R ⚠️
  • --routines ⚠️
  • --triggers
mysqldump -u root -p --where="id > 100" ma_base users > users_partial.sql
Description :

Sauvegarde avec condition WHERE

Options :
  • -w
  • --where
mysqldump -u root -p --ignore-table=ma_base.logs ma_base > sauvegarde.sql
Description :

Sauvegarde en ignorant certaines tables

Options :
  • --ignore-table
mysqldump -u root -p --tab=/chemin/export ma_base
Description :

Exporte les tables en fichiers séparés (CSV)

Options :
  • -T
  • --tab
  • --fields-terminated-by ⚠️
  • --fields-enclosed-by ⚠️
mysqlimport
Description :

Importe des fichiers CSV dans une base

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --local
  • -L
  • --delete
  • -d
  • --force ⚠️
  • -f ⚠️
  • --ignore
  • -i
  • --replace ⚠️
  • -r ⚠️
  • --fields-terminated-by ⚠️
  • --fields-enclosed-by ⚠️
  • --fields-optionally-enclosed-by ⚠️
  • --fields-escaped-by ⚠️
  • --lines-terminated-by
  • --ignore-lines
  • --columns
  • --compress
  • -C
  • --default-character-set
  • --lock-tables
  • -l
  • --low-priority
  • --verbose
  • -v
  • --version
  • -V
  • --help
  • -?
mysqlimport -u root -p --local ma_base /chemin/users.csv
Description :

Importe un fichier CSV dans une table

Options :
  • --local
  • -L
  • --fields-terminated-by ⚠️
  • --lines-terminated-by
mysqlimport -u root -p --delete ma_base users.csv
Description :

Vide la table avant import

Options :
  • -d
  • --delete
mysqlimport -u root -p --ignore ma_base users.csv
Description :

Ignore les lignes en double

Options :
  • -i
  • --ignore
mysqlimport -u root -p --replace ma_base users.csv
Description :

Remplace les lignes en double

Options :
  • -r ⚠️
  • --replace ⚠️
mysqlcheck
Description :

Vérifie, répare et optimise les tables

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --all-databases
  • -A
  • --databases
  • -B
  • --analyze
  • -a
  • --auto-repair ⚠️
  • --check
  • -c
  • --check-only-changed
  • -C
  • --extended
  • -e
  • --fast ⚠️
  • -F ⚠️
  • --force ⚠️
  • -f ⚠️
  • --medium-check
  • -m
  • --optimize
  • -o
  • --quick
  • -q
  • --repair ⚠️
  • -r ⚠️
  • --skip-database
  • --tables
  • --use-frm ⚠️
  • --verbose
  • -v
  • --version
  • -V
  • --write-binlog
  • --help
  • -?
mysqlcheck -u root -p --all-databases
Description :

Vérifie toutes les bases de données

Options :
  • -A
  • --all-databases
mysqlcheck -u root -p --check ma_base
Description :

Vérifie une base de données

Options :
  • -c
  • --check
mysqlcheck -u root -p --analyze ma_base
Description :

Analyse les tables pour optimiser les index

Options :
  • -a
  • --analyze
mysqlcheck -u root -p --optimize ma_base
Description :

Optimise les tables

Options :
  • -o
  • --optimize
mysqlcheck -u root -p --repair ma_base
Description :

Répare les tables corrompues

Options :
  • -r ⚠️
  • --repair ⚠️
mysqlcheck -u root -p --auto-repair ma_base
Description :

Répare automatiquement si nécessaire

Options :
  • --auto-repair ⚠️
mysqld
Description :

Démon serveur MySQL

Options :
  • --basedir
  • --datadir
  • --port
  • -P
  • --socket
  • --pid-file ⚠️
  • --log-error
  • --general-log
  • --general-log-file ⚠️
  • --slow-query-log
  • --slow-query-log-file ⚠️
  • --long-query-time
  • --bind-address
  • --skip-networking
  • --skip-grant-tables
  • --skip-name-resolve ⚠️
  • --default-storage-engine
  • --character-set-server
  • --collation-server
  • --max-connections
  • --max-allowed-packet
  • --innodb-buffer-pool-size
  • --innodb-log-file-size ⚠️
  • --innodb-flush-method ⚠️
  • --innodb-file-per-table ⚠️
  • --query-cache-size
  • --query-cache-type
  • --thread-cache-size
  • --table-open-cache
  • --tmp-table-size
  • --max-heap-table-size
  • --wait-timeout
  • --interactive-timeout
  • --connect-timeout
  • --console
  • --help
  • --verbose
  • -v
  • --version
  • -V
mysqld --initialize
Description :

Initialise le répertoire de données MySQL

Options :
  • --user
  • --basedir
  • --datadir
  • --initialize-insecure
mysqld --initialize-insecure
Description :

Initialise sans mot de passe root

Options :
  • --user
  • --basedir
  • --datadir
mysqld --console
Description :

Lance le serveur avec logs dans la console

Options :
  • --console
mysqld_safe
Description :

Script de démarrage sécurisé pour MySQL

Options :
  • --defaults-file ⚠️
  • --ledir
  • --malloc-lib
  • --nice
  • --no-defaults
  • --open-files-limit ⚠️
  • --pid-file ⚠️
  • --plugin-dir
  • --port
  • --skip-kill-mysqld
  • --socket
  • --syslog
  • --skip-syslog
  • --timezone
  • --user
  • --version
mysql_secure_installation
Description :

Sécurise l'installation MySQL (définit mot de passe root, supprime utilisateurs anonymes, etc.)

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --use-default
  • --defaults-file ⚠️
mysql_config
Description :

Affiche les options de compilation de MySQL

Options :
  • --cflags
  • --include
  • --libs
  • --libs_r
  • --plugindir
  • --port
  • --socket
  • --version
  • --variable
mysqlshow
Description :

Affiche les bases de données et tables

Options :
  • --host
  • -h
  • --port
  • -P
  • --user
  • -u
  • --password
  • -p
  • --count
  • -k
  • --status
  • -i
  • --verbose
  • -v
  • --help
mysqlshow -u root -p
Description :

Liste toutes les bases de données

Options :
  • -v
  • --verbose
mysqlshow -u root -p ma_base
Description :

Liste les tables d'une base

Options :
  • --count
  • -k
mysqlshow -u root -p ma_base users
Description :

Affiche les colonnes d'une table

Options :
  • --status
  • -i
mysqlbinlog
Description :

Lit les fichiers de logs binaires

Options :
  • --base64-output
  • --bind-address
  • --character-sets-dir
  • --database
  • -d
  • --debug
  • --disable-log-bin
  • -D
  • --force-if-open ⚠️
  • -F ⚠️
  • --force-read ⚠️
  • -f ⚠️
  • --hexdump
  • -H
  • --host
  • -h
  • --local-load
  • -l
  • --offset
  • -o
  • --password
  • -p
  • --port
  • -P
  • --protocol
  • --read-from-remote-server ⚠️
  • -R ⚠️
  • --result-file ⚠️
  • -r ⚠️
  • --rewrite-db ⚠️
  • --server-id
  • --set-charset
  • --short-form ⚠️
  • -s
  • --socket
  • -S
  • --start-datetime
  • --start-position
  • -j
  • --stop-datetime
  • --stop-never
  • --stop-never-slave-server-id
  • --stop-position
  • --stop-when-heartbeat
  • --table
  • -t
  • --to-last-log
  • -t
  • --user
  • -u
  • --verbose
  • -v
  • --verify-binlog-checksum
  • -c
  • --version
  • -V
mysqlbinlog binlog.000001
Description :

Lit un fichier de log binaire

Options :
  • --start-datetime
  • --stop-datetime
  • --start-position
  • --stop-position
mysqlbinlog --start-datetime="2024-01-01 00:00:00" binlog.000001
Description :

Lit à partir d'une date spécifique

Options :
  • --start-datetime
mysqlbinlog --database=ma_base binlog.000001
Description :

Filtre par base de données

Options :
  • -d
  • --database
mysqlbinlog -R -h serveur -u user -p binlog.000001
Description :

Lit un log binaire distant

Options :
  • -R ⚠️
  • --read-from-remote-server ⚠️
mysqlbinlog --verbose binlog.000001
Description :

Affiche les événements en pseudo-SQL

Options :
  • -v
  • --verbose
  • -vv
mysqlbinlog --hexdump binlog.000001
Description :

Affiche un dump hexadécimal

Options :
  • -H
  • --hexdump
mysqlbinlog --result-file=output.sql binlog.000001
Description :

Sauvegarde le résultat dans un fichier

Options :
  • -r ⚠️
  • --result-file ⚠️
mysqldumpslow
Description :

Analyse le log des requêtes lentes

Options :
  • -a
  • --verbose
  • -v
  • --debug
  • -d
  • --help
  • -h
  • --host
  • -s
  • --order
  • -t
  • --limit
  • -n
  • --pattern
mysqldumpslow -s t /var/log/mysql/slow.log
Description :

Trie par temps d'exécution

Options :
  • -s
  • --sort
mysqldumpslow -t 10 /var/log/mysql/slow.log
Description :

Affiche les 10 requêtes les plus lentes

Options :
  • -t
  • --top
mysqldumpslow -a "SELECT * FROM users" /var/log/mysql/slow.log
Description :

Ne pas abstraire les valeurs

Options :
  • -a
perror
Description :

Affiche la description d'un code d'erreur MySQL

Options :
  • --help
  • --info
  • --ndb
  • --silent
  • --verbose
  • --version
perror 1062
Description :

Affiche la signification de l'erreur 1062 (Duplicate entry)

SHOW DATABASES
Description :

[SQL] Affiche toutes les bases de données

Options :
  • LIKE
CREATE DATABASE ma_base
Description :

[SQL] Crée une base de données

Options :
  • CHARACTER SET
  • COLLATE
  • IF NOT EXISTS
CREATE DATABASE IF NOT EXISTS ma_base CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
Description :

[SQL] Crée une base avec encodage UTF-8 complet

DROP DATABASE ma_base
Description :

[SQL] Supprime une base de données

Options :
  • IF EXISTS
USE ma_base
Description :

[SQL] Sélectionne une base de données

SHOW TABLES
Description :

[SQL] Affiche les tables de la base courante

Options :
  • FROM
  • LIKE
SHOW TABLES FROM ma_base
Description :

[SQL] Affiche les tables d'une base spécifique

Options :
  • LIKE
CREATE TABLE users
Description :

[SQL] Crée une table

Options :
  • IF NOT EXISTS
  • ENGINE
  • AUTO_INCREMENT
  • DEFAULT CHARSET
  • COLLATE
  • COMMENT
  • ROW_FORMAT
  • TABLESPACE
  • STORAGE
  • PARTITION BY
CREATE TABLE IF NOT EXISTS users (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100), email VARCHAR(255) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP) ENGINE=InnoDB
Description :

[SQL] Exemple complet de création de table

DESCRIBE users
Description :

[SQL] Affiche la structure d'une table

DESC users
Description :

[SQL] Alias de DESCRIBE

SHOW COLUMNS FROM users
Description :

[SQL] Affiche les colonnes d'une table

Options :
  • FROM
  • LIKE
  • WHERE
SHOW CREATE TABLE users
Description :

[SQL] Affiche la commande CREATE TABLE complète

ALTER TABLE users ADD COLUMN age INT
Description :

[SQL] Ajoute une colonne

Options :
  • AFTER
  • FIRST
ALTER TABLE users MODIFY COLUMN name VARCHAR(200) NOT NULL
Description :

[SQL] Modifie une colonne

ALTER TABLE users CHANGE COLUMN name full_name VARCHAR(100)
Description :

[SQL] Renomme une colonne

ALTER TABLE users DROP COLUMN age
Description :

[SQL] Supprime une colonne

ALTER TABLE users ADD INDEX idx_email (email)
Description :

[SQL] Ajoute un index

Options :
  • UNIQUE
  • FULLTEXT
  • SPATIAL
ALTER TABLE users DROP INDEX idx_email
Description :

[SQL] Supprime un index

ALTER TABLE users ADD PRIMARY KEY (id)
Description :

[SQL] Ajoute une clé primaire

ALTER TABLE users DROP PRIMARY KEY
Description :

[SQL] Supprime la clé primaire

ALTER TABLE users ADD FOREIGN KEY (role_id) REFERENCES roles(id)
Description :

[SQL] Ajoute une clé étrangère

Options :
  • ON DELETE
  • ON UPDATE
ALTER TABLE users DROP FOREIGN KEY fk_users_role
Description :

[SQL] Supprime une clé étrangère

ALTER TABLE users RENAME TO clients
Description :

[SQL] Renomme une table

RENAME TABLE users TO clients
Description :

[SQL] Renomme une table (syntaxe alternative)

TRUNCATE TABLE users
Description :

[SQL] Vide une table (réinitialise AUTO_INCREMENT)

DROP TABLE users
Description :

[SQL] Supprime une table

Options :
  • IF EXISTS
  • RESTRICT
  • CASCADE
INSERT INTO users (name, email) VALUES ('John', 'john@example.com')
Description :

[SQL] Insère une ligne

Options :
  • IGNORE
  • ON DUPLICATE KEY UPDATE
  • DELAYED ⚠️
  • LOW_PRIORITY
  • HIGH_PRIORITY
INSERT INTO users (name, email) VALUES ('John', 'john@example.com'), ('Jane', 'jane@example.com')
Description :

[SQL] Insère plusieurs lignes

INSERT INTO users SET name='John', email='john@example.com'
Description :

[SQL] Insère avec syntaxe SET

INSERT IGNORE INTO users (name, email) VALUES ('John', 'john@example.com')
Description :

[SQL] Ignore les erreurs de duplication

INSERT INTO users (name, email) VALUES ('John', 'john@example.com') ON DUPLICATE KEY UPDATE name='John Updated'
Description :

[SQL] Met à jour si la clé existe déjà

REPLACE INTO users (id, name, email) VALUES (1, 'John', 'john@example.com')
Description :

[SQL] Insère ou remplace si la clé existe

SELECT * FROM users
Description :

[SQL] Sélectionne toutes les colonnes

Options :
  • DISTINCT
  • ALL
  • HIGH_PRIORITY
  • STRAIGHT_JOIN
  • SQL_SMALL_RESULT
  • SQL_BIG_RESULT
  • SQL_BUFFER_RESULT
  • SQL_NO_CACHE
  • SQL_CALC_FOUND_ROWS
SELECT id, name, email FROM users
Description :

[SQL] Sélectionne des colonnes spécifiques

Options :
  • AS
SELECT * FROM users WHERE id = 1
Description :

[SQL] Filtre avec WHERE

Options :
  • AND
  • OR
  • NOT
  • IN
  • BETWEEN
  • LIKE
  • REGEXP
  • IS NULL
  • IS NOT NULL
  • EXISTS
SELECT * FROM users WHERE name LIKE 'J%'
Description :

[SQL] Recherche avec LIKE

Options :
  • %
  • _
SELECT * FROM users WHERE id IN (1, 2, 3)
Description :

[SQL] Filtre avec IN

Options :
  • NOT IN
SELECT * FROM users WHERE created_at BETWEEN '2024-01-01' AND '2024-12-31'
Description :

[SQL] Filtre avec BETWEEN

SELECT * FROM users ORDER BY name ASC
Description :

[SQL] Trie les résultats

Options :
  • ASC
  • DESC
  • COLLATE
  • USING
SELECT * FROM users ORDER BY created_at DESC, name ASC
Description :

[SQL] Trie sur plusieurs colonnes

SELECT * FROM users LIMIT 10
Description :

[SQL] Limite le nombre de résultats

Options :
  • OFFSET
SELECT * FROM users LIMIT 10 OFFSET 20
Description :

[SQL] Pagination (lignes 21 à 30)

SELECT * FROM users LIMIT 20, 10
Description :

[SQL] Syntaxe alternative (offset, limit)

SELECT COUNT(*) FROM users
Description :

[SQL] Compte le nombre de lignes

SELECT AVG(age), MIN(age), MAX(age), SUM(salary) FROM users
Description :

[SQL] Fonctions d'agrégation

Options :
  • GROUP_CONCAT
  • STD
  • STDDEV
  • VARIANCE
  • BIT_AND
  • BIT_OR
  • BIT_XOR
SELECT role, COUNT(*) FROM users GROUP BY role
Description :

[SQL] Regroupe les résultats

Options :
  • WITH ROLLUP
SELECT role, COUNT(*) FROM users GROUP BY role HAVING COUNT(*) > 5
Description :

[SQL] Filtre après GROUP BY

SELECT u.name, o.total FROM users u INNER JOIN orders o ON u.id = o.user_id
Description :

[SQL] Jointure interne

Options :
  • LEFT JOIN
  • RIGHT JOIN
  • CROSS JOIN
  • NATURAL JOIN
  • STRAIGHT_JOIN
SELECT u.name, o.total FROM users u LEFT JOIN orders o ON u.id = o.user_id
Description :

[SQL] Jointure externe gauche

SELECT * FROM users UNION SELECT * FROM archived_users
Description :

[SQL] Union de requêtes

Options :
  • UNION ALL
  • UNION DISTINCT
SELECT * FROM users WHERE id = (SELECT MAX(id) FROM users)
Description :

[SQL] Sous-requête

SELECT * FROM users WHERE EXISTS (SELECT 1 FROM orders WHERE orders.user_id = users.id)
Description :

[SQL] Sous-requête avec EXISTS

Options :
  • NOT EXISTS
UPDATE users SET email = 'new@example.com' WHERE id = 1
Description :

[SQL] Met à jour des lignes

Options :
  • IGNORE
  • LOW_PRIORITY
  • ORDER BY
  • LIMIT
UPDATE users SET age = age + 1
Description :

[SQL] Met à jour avec expression

DELETE FROM users WHERE id = 1
Description :

[SQL] Supprime des lignes

Options :
  • IGNORE
  • LOW_PRIORITY
  • QUICK
  • ORDER BY
  • LIMIT
CREATE INDEX idx_name ON users(name)
Description :

[SQL] Crée un index

Options :
  • UNIQUE
  • FULLTEXT
  • SPATIAL
  • BTREE
  • HASH
  • COMMENT
  • VISIBLE
  • INVISIBLE
CREATE UNIQUE INDEX idx_email ON users(email)
Description :

[SQL] Crée un index unique

CREATE FULLTEXT INDEX idx_content ON articles(title, body)
Description :

[SQL] Crée un index full-text

Options :
  • WITH PARSER
DROP INDEX idx_name ON users
Description :

[SQL] Supprime un index

Options :
  • ALGORITHM
  • LOCK
SHOW INDEX FROM users
Description :

[SQL] Affiche les index d'une table

Options :
  • WHERE
CREATE VIEW user_emails AS SELECT id, email FROM users
Description :

[SQL] Crée une vue

Options :
  • OR REPLACE
  • ALGORITHM
  • DEFINER
  • SQL SECURITY
  • WITH CHECK OPTION
DROP VIEW user_emails
Description :

[SQL] Supprime une vue

Options :
  • IF EXISTS
  • RESTRICT
  • CASCADE
SHOW CREATE VIEW user_emails
Description :

[SQL] Affiche la définition d'une vue

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'
Description :

[SQL] Crée un utilisateur

Options :
  • IDENTIFIED WITH
  • PASSWORD EXPIRE
  • ACCOUNT LOCK
  • ACCOUNT UNLOCK
  • DEFAULT ROLE
  • REQUIRE
  • WITH
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password'
Description :

[SQL] Crée un utilisateur accessible de partout

DROP USER 'newuser'@'localhost'
Description :

[SQL] Supprime un utilisateur

Options :
  • IF EXISTS
RENAME USER 'olduser'@'localhost' TO 'newuser'@'localhost'
Description :

[SQL] Renomme un utilisateur

SET PASSWORD FOR 'user'@'localhost' = 'newpassword'
Description :

[SQL] Change le mot de passe d'un utilisateur

ALTER USER 'user'@'localhost' IDENTIFIED BY 'newpassword'
Description :

[SQL] Change le mot de passe (syntaxe moderne)

GRANT ALL PRIVILEGES ON ma_base.* TO 'user'@'localhost'
Description :

[SQL] Donne tous les privilèges sur une base

Options :
  • WITH GRANT OPTION
  • IDENTIFIED BY
GRANT SELECT, INSERT, UPDATE ON ma_base.users TO 'user'@'localhost'
Description :

[SQL] Donne des privilèges spécifiques

Options :
  • DELETE ⚠️
  • CREATE
  • DROP
  • ALTER
  • INDEX
  • EXECUTE ⚠️
  • TRIGGER
  • REFERENCES
  • CREATE VIEW
  • SHOW VIEW
  • CREATE ROUTINE
  • ALTER ROUTINE
  • EVENT
  • FILE
  • PROCESS
  • RELOAD
  • REPLICATION CLIENT
  • REPLICATION SLAVE
  • SHOW DATABASES
  • SHUTDOWN
  • SUPER ⚠️
  • USAGE
REVOKE ALL PRIVILEGES ON ma_base.* FROM 'user'@'localhost'
Description :

[SQL] Révoque tous les privilèges

Options :
  • GRANT OPTION FOR
REVOKE INSERT, UPDATE ON ma_base.users FROM 'user'@'localhost'
Description :

[SQL] Révoque des privilèges spécifiques

SHOW GRANTS FOR 'user'@'localhost'
Description :

[SQL] Affiche les privilèges d'un utilisateur

SHOW GRANTS
Description :

[SQL] Affiche les privilèges de l'utilisateur courant

FLUSH PRIVILEGES
Description :

[SQL] Recharge les tables de privilèges

BEGIN
Description :

[SQL] Démarre une transaction

Options :
  • WORK
START TRANSACTION
Description :

[SQL] Démarre une transaction (syntaxe étendue)

Options :
  • READ ONLY
  • READ WRITE
  • WITH CONSISTENT SNAPSHOT
COMMIT
Description :

[SQL] Valide une transaction

Options :
  • WORK
  • AND CHAIN
  • RELEASE
ROLLBACK
Description :

[SQL] Annule une transaction

Options :
  • WORK
  • AND CHAIN
  • RELEASE
  • TO SAVEPOINT
SAVEPOINT sp1
Description :

[SQL] Crée un point de sauvegarde

ROLLBACK TO SAVEPOINT sp1
Description :

[SQL] Revient à un point de sauvegarde

RELEASE SAVEPOINT sp1
Description :

[SQL] Supprime un point de sauvegarde

SET autocommit = 0
Description :

[SQL] Désactive l'autocommit

LOCK TABLES users READ, orders WRITE
Description :

[SQL] Verrouille des tables

Options :
  • READ
  • WRITE
  • READ LOCAL
  • LOW_PRIORITY WRITE
UNLOCK TABLES
Description :

[SQL] Déverrouille toutes les tables

EXPLAIN SELECT * FROM users WHERE email = 'test@example.com'
Description :

[SQL] Analyse le plan d'exécution d'une requête

Options :
  • FORMAT ⚠️
  • ANALYZE
  • VERBOSE
  • FOR CONNECTION
EXPLAIN FORMAT=JSON SELECT * FROM users
Description :

[SQL] Plan d'exécution au format JSON

Options :
  • FORMAT=TRADITIONAL ⚠️
  • FORMAT=TREE ⚠️
EXPLAIN ANALYZE SELECT * FROM users
Description :

[SQL] Exécute et analyse la requête

SHOW PROCESSLIST
Description :

[SQL] Affiche les processus en cours

Options :
  • FULL
KILL 123
Description :

[SQL] Tue un processus

Options :
  • CONNECTION
  • QUERY
SHOW STATUS
Description :

[SQL] Affiche les statistiques du serveur

Options :
  • LIKE
  • GLOBAL
  • SESSION
SHOW STATUS LIKE '%Threads%'
Description :

[SQL] Filtre les statistiques

Options :
  • LIKE
SHOW VARIABLES
Description :

[SQL] Affiche les variables de configuration

Options :
  • LIKE
  • GLOBAL
  • SESSION
SHOW VARIABLES LIKE 'max_connections'
Description :

[SQL] Affiche une variable spécifique

Options :
  • LIKE
SET GLOBAL max_connections = 200
Description :

[SQL] Modifie une variable globale

Options :
  • GLOBAL
  • SESSION
  • PERSIST
  • PERSIST_ONLY
SHOW ENGINE INNODB STATUS
Description :

[SQL] Affiche le statut détaillé d'InnoDB

SHOW WARNINGS
Description :

[SQL] Affiche les avertissements de la dernière commande

Options :
  • LIMIT
SHOW ERRORS
Description :

[SQL] Affiche les erreurs de la dernière commande

Options :
  • LIMIT
SHOW BINARY LOGS
Description :

[SQL] Liste les logs binaires

SHOW MASTER STATUS
Description :

[SQL] Affiche le statut du master

SHOW SLAVE STATUS
Description :

[SQL] Affiche le statut du slave (réplication)

Options :
  • FOR CHANNEL
SHOW TRIGGERS
Description :

[SQL] Liste les triggers

Options :
  • FROM
  • LIKE
  • WHERE
CREATE TRIGGER before_user_insert BEFORE INSERT ON users FOR EACH ROW SET NEW.created_at = NOW()
Description :

[SQL] Crée un trigger

Options :
  • BEFORE
  • AFTER
  • INSERT
  • UPDATE
  • DELETE ⚠️
  • FOLLOWS
  • PRECEDES
DROP TRIGGER before_user_insert
Description :

[SQL] Supprime un trigger

Options :
  • IF EXISTS
SHOW PROCEDURE STATUS
Description :

[SQL] Liste les procédures stockées

Options :
  • LIKE
  • WHERE
SHOW FUNCTION STATUS
Description :

[SQL] Liste les fonctions

Options :
  • LIKE
  • WHERE
DELIMITER //
Description :

[SQL] Change le délimiteur pour les procédures

CREATE PROCEDURE get_users() BEGIN SELECT * FROM users; END //
Description :

[SQL] Crée une procédure stockée

CALL get_users()
Description :

[SQL] Appelle une procédure stockée

DROP PROCEDURE get_users
Description :

[SQL] Supprime une procédure

Options :
  • IF EXISTS
CREATE FUNCTION calc_tax(price DECIMAL) RETURNS DECIMAL DETERMINISTIC RETURN price * 0.2
Description :

[SQL] Crée une fonction

Options :
  • DETERMINISTIC
  • NOT DETERMINISTIC
  • READS SQL DATA
  • MODIFIES SQL DATA
  • NO SQL
  • CONTAINS SQL
DROP FUNCTION calc_tax
Description :

[SQL] Supprime une fonction

Options :
  • IF EXISTS
SHOW EVENTS
Description :

[SQL] Liste les événements planifiés

Options :
  • FROM
  • LIKE
  • WHERE
CREATE EVENT cleanup ON SCHEDULE EVERY 1 DAY DO DELETE FROM logs WHERE created_at < NOW() - INTERVAL 30 DAY
Description :

[SQL] Crée un événement planifié

Options :
  • ON SCHEDULE
  • ON COMPLETION
  • ENABLE
  • DISABLE
  • COMMENT
ALTER EVENT cleanup DISABLE
Description :

[SQL] Désactive un événement

Options :
  • ENABLE
  • DISABLE
  • ON SCHEDULE
  • RENAME TO
  • COMMENT
DROP EVENT cleanup
Description :

[SQL] Supprime un événement

Options :
  • IF EXISTS
SHOW CREATE EVENT cleanup
Description :

[SQL] Affiche la définition d'un événement

SHOW TABLE STATUS
Description :

[SQL] Affiche des informations détaillées sur les tables

Options :
  • FROM
  • LIKE
  • WHERE
OPTIMIZE TABLE users
Description :

[SQL] Optimise une table

Options :
  • NO_WRITE_TO_BINLOG
  • LOCAL
ANALYZE TABLE users
Description :

[SQL] Analyse et met à jour les statistiques d'index

Options :
  • NO_WRITE_TO_BINLOG
  • LOCAL
CHECK TABLE users
Description :

[SQL] Vérifie une table pour les erreurs

Options :
  • FOR UPGRADE
  • QUICK
  • FAST
  • MEDIUM
  • EXTENDED
  • CHANGED
REPAIR TABLE users
Description :

[SQL] Répare une table corrompue

Options :
  • QUICK
  • EXTENDED
  • USE_FRM
CHECKSUM TABLE users
Description :

[SQL] Calcule la somme de contrôle d'une table

Options :
  • QUICK
  • EXTENDED
BACKUP TABLE users TO '/backup/'
Description :

[SQL] Sauvegarde une table (déprécié, utiliser mysqldump)

RESTORE TABLE users FROM '/backup/'
Description :

[SQL] Restaure une table (déprécié)

LOAD DATA INFILE '/tmp/users.csv' INTO TABLE users FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS
Description :

[SQL] Importe des données depuis un fichier CSV

Options :
  • LOCAL
  • REPLACE
  • IGNORE
  • FIELDS TERMINATED BY
  • ENCLOSED BY
  • ESCAPED BY
  • LINES TERMINATED BY
  • STARTING BY
  • IGNORE ... LINES
  • SET
LOAD DATA LOCAL INFILE 'users.csv' INTO TABLE users
Description :

[SQL] Importe un fichier local

Options :
  • LOCAL
SELECT ... INTO OUTFILE '/tmp/users.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'
Description :

[SQL] Exporte les résultats vers un fichier CSV

Options :
  • FIELDS TERMINATED BY
  • ENCLOSED BY
  • ESCAPED BY
  • LINES TERMINATED BY
SELECT ... INTO DUMPFILE '/tmp/dump.sql'
Description :

[SQL] Écrit une seule ligne dans un fichier

SELECT ... INTO @var1, @var2
Description :

[SQL] Stocke les résultats dans des variables

SET @var = 123
Description :

[SQL] Définit une variable utilisateur

SELECT @var
Description :

[SQL] Affiche une variable utilisateur

PREPARE stmt FROM 'SELECT * FROM users WHERE id = ?'
Description :

[SQL] Prépare une requête

SET @id = 1
Description :

[SQL] Définit une variable pour requête préparée

EXECUTE stmt USING @id
Description :

[SQL] Exécute une requête préparée

DEALLOCATE PREPARE stmt
Description :

[SQL] Libère une requête préparée

SOURCE /chemin/script.sql
Description :

[SQL] Exécute un fichier SQL depuis le client mysql

\. /chemin/script.sql
Description :

[SQL] Alias de SOURCE

STATUS
Description :

[SQL] Affiche le statut de la connexion

\s
Description :

[SQL] Alias de STATUS

QUIT
Description :

[SQL] Quitte le client mysql

\q
Description :

[SQL] Alias de QUIT

EXIT
Description :

[SQL] Quitte le client mysql

CLEAR
Description :

[SQL] Efface l'écran (commande système)

\c
Description :

[SQL] Efface la requête en cours

\G
Description :

[SQL] Affiche les résultats verticalement

SELECT * FROM users \G
Description :

[SQL] Exemple d'affichage vertical

\T output.txt
Description :

[SQL] Redirige la sortie vers un fichier

\t
Description :

[SQL] Arrête la redirection de sortie

\P less
Description :

[SQL] Utilise un pager pour les résultats

\n
Description :

[SQL] Désactive le pager

\e
Description :

[SQL] Ouvre l'éditeur pour écrire une requête

\p
Description :

[SQL] Affiche la requête en cours

\r
Description :

[SQL] Change le statut de la connexion (reconnect)

\u ma_base
Description :

[SQL] Change de base de données

\C utf8mb4
Description :

[SQL] Change le jeu de caractères

\d
Description :

[SQL] Change le délimiteur

\w
Description :

[SQL] Affiche les avertissements après chaque requête

\W
Description :

[SQL] Désactive l'affichage des avertissements

NOW()
Description :

[SQL] Fonction : date et heure courante

CURDATE()
Description :

[SQL] Fonction : date courante

CURTIME()
Description :

[SQL] Fonction : heure courante

DATE_ADD(NOW(), INTERVAL 7 DAY)
Description :

[SQL] Fonction : ajoute un intervalle

Options :
  • INTERVAL
  • DAY
  • HOUR
  • MINUTE
  • SECOND
  • MONTH
  • YEAR
DATEDIFF('2024-12-31', '2024-01-01')
Description :

[SQL] Fonction : différence en jours

DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')
Description :

[SQL] Fonction : formate une date

Options :
  • %Y
  • %m
  • %d
  • %H
  • %i
  • %s
  • %W
  • %M
CONCAT(first_name, ' ', last_name)
Description :

[SQL] Fonction : concatène des chaînes

Options :
  • CONCAT_WS
SUBSTRING(name, 1, 10)
Description :

[SQL] Fonction : extrait une sous-chaîne

Options :
  • LEFT
  • RIGHT
  • MID
LENGTH(name)
Description :

[SQL] Fonction : longueur en octets

Options :
  • CHAR_LENGTH
  • CHARACTER_LENGTH
UPPER(name)
Description :

[SQL] Fonction : convertit en majuscules

Options :
  • LOWER
  • LCASE
  • UCASE
TRIM(name)
Description :

[SQL] Fonction : supprime les espaces

Options :
  • LTRIM
  • RTRIM
  • BOTH
  • LEADING
  • TRAILING
REPLACE(text, 'old', 'new')
Description :

[SQL] Fonction : remplace du texte

IFNULL(colonne, 'default')
Description :

[SQL] Fonction : valeur par défaut si NULL

Options :
  • COALESCE
  • NULLIF
  • ISNULL

Partager