Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| memo:mariadb [12/07/2023 10:56] – créée Arnaud Jacquemin | memo:mariadb [09/07/2025 11:43] (Version actuelle) – [Administrer les bases de données] Arnaud Jacquemin | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== | + | ====== MariaDB ====== |
| ===== Relancer le serveur ===== | ===== Relancer le serveur ===== | ||
| Ligne 6: | Ligne 6: | ||
| <code bash> | <code bash> | ||
| - | service mariadb | + | systemctl |
| - | service | + | systemctl |
| </ | </ | ||
| + | ===== Administrer les bases de données ===== | ||
| + | |||
| + | Se connecter sur le serveur avec la commande '' | ||
| + | |||
| + | Lister les bases existantes ((https:// | ||
| + | <code sql> | ||
| + | SHOW DATABASES; | ||
| + | </ | ||
| + | |||
| + | Créer une base ((https:// | ||
| + | <code sql> | ||
| + | CREATE DATABASE nom_de_la_base; | ||
| + | </ | ||
| + | |||
| + | Supprimer une base ((https:// | ||
| + | |||
| + | <code sql> | ||
| + | DROP DATABASE nom_de_la_base; | ||
| + | </ | ||
| + | |||
| + | Connaître la version du serveur : | ||
| + | <code sql> | ||
| + | SELECT VERSION(); | ||
| + | </ | ||
| + | |||
| + | ===== Administrer les utilisateurs ===== | ||
| + | |||
| + | Lister les utilisateurs : | ||
| + | |||
| + | <code sql> | ||
| + | SELECT user, host FROM mysql.user; | ||
| + | </ | ||
| + | |||
| + | Créer un utilisateur : ((https:// | ||
| + | |||
| + | <code sql> | ||
| + | CREATE USER ' | ||
| + | CREATE USER ' | ||
| + | </ | ||
| + | |||
| + | |||
| + | Attribuer des droits à un utilisateur : ((https:// | ||
| + | |||
| + | <code sql> | ||
| + | GRANT ALL ON nom_de_la_base.* TO ' | ||
| + | GRANT INSERT, SELECT, UPDATE, DELETE ON nom_de_la_base.* TO ' | ||
| + | GRANT SELECT ON nom_de_la_base.* TO ' | ||
| + | </ | ||
| + | |||
| + | Consulter les droits d'un utilisateur : ((https:// | ||
| + | <code sql> | ||
| + | SHOW GRANTS FOR utilisateur; | ||
| + | </ | ||
| + | |||
| + | Retirer les droits d'un utilisateur : ((https:// | ||
| + | <code sql> | ||
| + | REVOKE ALL PRIVILEGES ON *.* FROM `user`@`%`; | ||
| + | </ | ||
| + | |||
| + | Supprimer un utilisateur : | ||
| + | <code sql> | ||
| + | DROP USER ' | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Rendre accessible sur le réseau ===== | ||
| + | |||
| + | La documentation : https:// | ||
| + | |||
| + | Solution qui marche sur une Debian : | ||
| + | |||
| + | * Éditer ''/ | ||
| + | * Remplacer '' | ||
| ===== Obtenir les journaux d' | ===== Obtenir les journaux d' | ||
| Ligne 45: | Ligne 118: | ||
| Source : https:// | Source : https:// | ||
| + | |||
| + | ===== Obtenir taille des tables d'une base ===== | ||
| + | |||
| + | Tailles en mégaoctets | ||
| + | |||
| + | <code sql> | ||
| + | SELECT (data_length+index_length)/ | ||
| + | FROM information_schema.tables | ||
| + | WHERE table_schema=' | ||
| + | ORDER BY tablesize_mb DESC; | ||
| + | </ | ||
| + | |||
| + | ===== Produire une sauvegarde ===== | ||
| + | |||
| + | Pour l' | ||
| + | <code bash> | ||
| + | mariadb-dump --all-databases --single-transaction > nom_fichier.sql | ||
| + | </ | ||
| + | |||
| + | Pour une base en particulier : | ||
| + | <code bash> | ||
| + | mariadb-dump nom_base --single-transaction > nom_fichier.sql | ||
| + | </ | ||
| + | |||
| + | Pour exclure une table de la sauvegarde, utiliser l' | ||
| + | <code bash> | ||
| + | mariadb-dump nom_base --single-transaction --ignore-table=nom_table > nom_fichier.sql | ||
| + | </ | ||
| + | |||
| + | Pour ne pas sauvegarder les données d'une table (n' | ||
| + | <code bash> | ||
| + | mariadb-dump nom_base --single-transaction --ignore-table-data=nom_base.nom_table > nom_fichier.sql | ||
| + | </ | ||
| + | |||
| + | Source : https:// | ||
| + | |||
| + | |||
| + | ===== Restaurer une sauvegarde ===== | ||
| + | |||
| + | <code bash> | ||
| + | mariadb db_name < backup-file.sql | ||
| + | </ | ||
| + | |||
| + | Source : https:// | ||
| + | |||
| + | |||
| + | ===== Ordonnanceur ===== | ||
| + | |||
| + | <code sql> | ||
| + | -- Activer l' | ||
| + | SET GLOBAL event_scheduler = ON; | ||
| + | |||
| + | -- Vérifier si l' | ||
| + | SHOW PROCESSLIST; | ||
| + | |||
| + | -- Se positionner sur la bonne base | ||
| + | USE limesurvey; | ||
| + | |||
| + | -- Créer un évènvement de purge des logs d' | ||
| + | CREATE EVENT purge_auditlog | ||
| + | ON SCHEDULE EVERY 1 DAY DO | ||
| + | | ||
| + | |||
| + | -- Vérifier présence de l' | ||
| + | SHOW EVENTS; | ||
| + | </ | ||