all:bibles:langages:mysql
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| all:bibles:langages:mysql [2025/01/17 10:25] – [Exécuter commande] omeylhoc | all:bibles:langages:mysql [2026/01/19 10:57] (Version actuelle) – [Sources] omeylhoc | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== MySQL ====== | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Accès ===== | ||
| + | |||
| + | ==== Identification ==== | ||
| + | |||
| + | === Accès sans mot de passe === | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u < | ||
| + | </ | ||
| + | |||
| + | === Accès avec mot de passe === | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u < | ||
| + | </ | ||
| + | |||
| + | === Accès root === | ||
| + | |||
| + | À partir d' | ||
| + | |||
| + | <code bash> | ||
| + | sudo mysql | ||
| + | </ | ||
| + | |||
| + | <note warning> | ||
| + | |||
| + | En cas de besoin d'un accès global depuis un même compte, la solution conseillée est de créer un nouvel utilisateur et de lui attribuer tous les privilèges : | ||
| + | |||
| + | <code sql> | ||
| + | CREATE USER ' | ||
| + | GRANT ALL ON *.* TO ' | ||
| + | FLUSH PRIVILEGES; | ||
| + | </ | ||
| + | |||
| + | <note important> | ||
| + | |||
| + | ==== Utilisateurs ==== | ||
| + | |||
| + | === Lister les utilisateurs === | ||
| + | |||
| + | <code sql> | ||
| + | mysql> select user from mysql.user; | ||
| + | </ | ||
| + | |||
| + | === Créer un utilisateur et définir mot de passe === | ||
| + | |||
| + | * Jusqu' | ||
| + | |||
| + | <code sql> | ||
| + | mysql> create user " | ||
| + | mysql> set password for " | ||
| + | </ | ||
| + | |||
| + | * A partir de MySQL 8 | ||
| + | |||
| + | <code sql> | ||
| + | mysql> create user " | ||
| + | </ | ||
| + | |||
| + | === Supprimer utilisateur === | ||
| + | |||
| + | * Jusqu' | ||
| + | |||
| + | <code sql> | ||
| + | mysql> drop user from " | ||
| + | </ | ||
| + | |||
| + | * A partir de MySQL 8 | ||
| + | |||
| + | <code sql> | ||
| + | mysql> drop user " | ||
| + | </ | ||
| + | |||
| + | ==== Droits ==== | ||
| + | |||
| + | === Lister les droits d'un utilisateur === | ||
| + | |||
| + | <code sql> | ||
| + | mysql> show grants for " | ||
| + | </ | ||
| + | |||
| + | |||
| + | === Donner tous les droits sur une bdd === | ||
| + | |||
| + | <code sql> | ||
| + | mysql> grant all on nom_base.* to " | ||
| + | </ | ||
| + | |||
| + | === Supprimer les droits === | ||
| + | |||
| + | <code sql> | ||
| + | mysql> revoke all privileges on nom_base.* from " | ||
| + | </ | ||
| + | |||
| + | === Prise en compte === | ||
| + | |||
| + | <code sql> | ||
| + | mysql> flush privileges; | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Commandes de base ===== | ||
| + | |||
| + | ==== Lister les bases de données ==== | ||
| + | |||
| + | <code sql> | ||
| + | show databases; | ||
| + | </ | ||
| + | |||
| + | ==== Connexion à la base de données ==== | ||
| + | |||
| + | <code sql> | ||
| + | connect < | ||
| + | </ | ||
| + | |||
| + | ==== Lister les tables ==== | ||
| + | |||
| + | <code sql> | ||
| + | show tables; | ||
| + | </ | ||
| + | |||
| + | ==== Description d'un table ==== | ||
| + | |||
| + | <code sql> | ||
| + | describe < | ||
| + | show columns from < | ||
| + | show create table < | ||
| + | </ | ||
| + | |||
| + | ==== Requête ==== | ||
| + | |||
| + | === Affichage standard === | ||
| + | |||
| + | <code sql> | ||
| + | select * from matable where id=' | ||
| + | select * from matable where champ like ' | ||
| + | select * from matable limit 10; # limite l' | ||
| + | </ | ||
| + | |||
| + | === Affichage des champs === | ||
| + | |||
| + | <code sql> | ||
| + | select * from matable where id=' | ||
| + | </ | ||
| + | |||
| + | === Champ JSON === | ||
| + | |||
| + | Sélection depuis une table des éléments ayant un champ JSON toto non NULL dans le paramètre extraParameters, | ||
| + | |||
| + | <code sql> | ||
| + | select identifier, JSON_EXTRACT(extraParameters, | ||
| + | </ | ||
| + | |||
| + | === extraire dans un csv === | ||
| + | |||
| + | <code sql> | ||
| + | select identifier, extraParameters | ||
| + | into OUTFILE '/ | ||
| + | fields terminated by ',' | ||
| + | enclosed by '"' | ||
| + | lines terminated by ' | ||
| + | from Table where identifier like ' | ||
| + | </ | ||
| + | |||
| + | === Modification d'une valeur === | ||
| + | |||
| + | <code sql> | ||
| + | update < | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Commandes à partir du shell ===== | ||
| + | |||
| + | ==== Exécuter commande ==== | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u user -ppassword -D database -e " | ||
| + | </ | ||
| + | |||
| + | === Affichage brut === | ||
| + | |||
| + | * -N (no header) : pas d' | ||
| + | * -s (silent) : pas de séparateur de colonne | ||
| + | |||
| + | <code bash> | ||
| + | mysql -N -s -u user -ppassword -D database -e " | ||
| + | </ | ||
| + | |||
| + | ==== Exécuter plusieurs commandes ==== | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u user -ppassword -D database << eof | ||
| + | commandes | ||
| + | eof | ||
| + | </ | ||
| + | |||
| + | ==== Exécuter script ==== | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u user -ppassword < fichier.sql | ||
| + | </ | ||
| + | |||
| + | <note warning> | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Manipulation bdd===== | ||
| + | |||
| + | ==== Backup/ | ||
| + | |||
| + | === Exporter une base de données === | ||
| + | |||
| + | <code bash> | ||
| + | mysqldump -u root -p maBase > maBase_backup.sql | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | mariadb-dump --user=< | ||
| + | </ | ||
| + | |||
| + | === Importer une base de données === | ||
| + | |||
| + | <code bash> | ||
| + | mysql -u root -p maBase < maBase_backup.sql | ||
| + | </ | ||
| + | |||
| + | ==== Suppression base de données ==== | ||
| + | |||
| + | <code sql> | ||
| + | mysql> drop database < | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== Sources ===== | ||
| + | |||
| + | * [[https:// | ||
| + | |||
