Gestion élémentaire d’une base de données (MariaDB) pour l’enseignant¶
Note
Quelques commandes utiles pour gérer une base de données, plutôt à destination des enseinants (cette partie n’est pas au programme pour les élèves) On prend comme exemple la création d’une table pour la gestion des ordinateurs d’une salle , on en profite pour parler de l’intégrité d’une base.
Créer une base de données avec utilisateur et droits :¶
sudo mysql
/* remplacer localhost par * pour autoriser la connexion des ordinateurs de la salle*/
CREATE USER gsalle@localhost IDENTIFIED BY '@pass7uyH';
/* pour supprimer DROP USER gsalle@localhost; */
/* céation de la table gestsalle */
CREATE DATABASE IF NOT EXISTS gestsalle;
/* ajout de tous les droits à l'utilisateur */
GRANT ALL ON `gestsalle`.* TO 'gsalle'@'localhost';
/* Création d'une table dans la base */
Des commandes utiles¶
/* créer une table à partir d'une requete */
create table premierensi SELECT * FROM `0810005R_premiere_nsi_contenu`;
/* Créer une table à partie d'un model */
"CREATE TABLE IF NOT EXISTS `calendrier` LIKE `calendrier_model`"
/* depuis le lcient , créer une table et la compléter avec un fichier sql */
CREATE DATABASE IF NOT EXISTS world;
USE world;
source /opt/sql/world.sql;
GRANT ALL ON `world`.* TO 'sqluser'@'localhost';
/* Ajouter une conrainte */
alter table `liste_ordinateurs` ADD CONSTRAINT `salles_ordinateurs` FOREIGN KEY (`IDSALLE`) REFERENCES `salles` (`reference`);
Passer de maria à mysql via un backup¶
Note
Quand on fait un dump depuis mariaDB pour l’insérer dans mysql.
sed -i 's/utf8mb4_0900_ai_ci/utf8_general_ci/g' /home/admin/donnees2024.sql
sed -i 's/CHARSET=utf8mb4/CHARSET=utf8/g' /home/admin/donnees2024.sql
Gérer les utilisateurs¶
/* Afficher le utilisateurs */
select user,host from mysql.user;
/* Afficher les droits d'un utilisateur */
show grants for "gsalle"@"localhost";
/* Changer un mot de passe */
ALTER USER "gsalle"@"localhost" IDENTIFIED BY ''
FLUSH PRIVILEGES;