Vous êtes ici :
Accueil Tutoriel Administration Système Intéragir avec MySQL grâce au SHELL

Intéragir avec MySQL grâce au SHELL

ce petit tutoriel vous initie aux manipulations d'une base de données MySQL grâce au script SHELL

Le but de ce tutoriel est de vous apprendre à manipuler la base de données MySQL sous linux(Ubuntu) grâce au SHELL je suppose que vous avez des connaissances en shell.Tout d'abord un petit rappel sur le script shell.

Définition du shell

Le « Shell » est ce que l’on appel un « Interpréteur de commandes ». Il date de l’époque d’UNIX, où le seul moyen de communiquer avec sa machine était d’écrire des lignes textes au clavier, dans un langage compréhensible à la fois par l’humain et la machine.  Le rôle de la machine étant d'exécuter les commandes de l’utilisateur et d’afficher le résultat à l’écran.
Le shell c'est un programme qui se trouve dans le répertoire /bin.
Par définition, il doit être léger et rapide, et reste un service d’accès privilégié aux Noyau Linux (Kernel) pour l'exécution de primitives système.
Depuis, cette « interface » avec la machine a perdurée car elle est rapide et fiable pour l’utilisateur qui la maitrise. Le shell a évolué aux travers des années, plusieurs types de Shell existent

nous avons :

- le /bin/sh   shell Bourne
- le /bin/bash shell Bourne Again SHell
- le /bin/csh  C shell  
- le /bin/ksh  Korn shell
- le /bin/tcsh C shell amélioré

Notez que dans la suite du tutoriel nous utiliserons le shell "Bourne Again Shell (/bin/bash)" car il est installé par défaut sur les sytèmes linux.

Mais le principe de base est toujours resté le même : Les shells sont des interpréteurs ( aussi un véritable language de programmation) , ils lisent chaque commande saisie par l’utilisateur (ou lue à partir d’un fichier), vérifient et traitent la syntaxe pour l’exécuter. Voila un bref rappel sur le shell.

Petit rappel du script

Voyons un exemple de code shell :

par convention le nom du fichier shell porte l'extension sh, créons un fichier du nom exemple1.sh avec un éditeur de texte de votre choix par exemple nano, vi , gedit, ...

# gedit exemple1.sh

à l'intérieur mettez ce petit bout de code :

#!/bin/bash
echo "Hello world !"

Explication :

la ligne 1 permet de donner le chemin vers l'interpréteur on utilse ici "Bourne Again Shell" ou le bash qui se trouve dans le repertoire /bin

la ligne 2 permet d'afficher un message sur la sortie standard(ici écran de l'utilisateur) grâce à la fonction echo.
 Maintenant sauvegarder le fichier selon l'option de votre éditeur de texte. Pour éxécuter le script il faut modifier le droit du fichier alors tapez ce code :

NB: vous devez être root pour donner ce droit :

$ sudo chmod 755 exemple1.sh

ou si vous êtes déjà en root :

# chmod 755 exemple1.sh


 pour éxécuter maintenant tapez juste un point(.) suivi de slashe (/) puis le nom du fichier à éxécuter  comme ceci :

# ./exemple1.sh

Et si tout va bien on a le message "Hello world !" affiché dans le console.

Voila un petit rappel sur le script shell attaquons le vif du sujet.

Tout d'abord on va créer une base de données nommée "database_shell". Si votre serveur Mysql est déjà en cours d'éxécution se connecté avec les informations de connexion ici on utilise l'option par défaut c'est-à-dire l'utilisateur "root" mot de passe vide :

# mysql

si tout va bien on a le prompt de mysql comme suit :

# mysql >

créons la base de données, toujours je suppose que vous avez des connaissances en mysql (les réquetes) si ce n'est pas le cas contactez vos enseignants de SGBD.

CREATE DATABASE database_shell;

Maintenant on va utiliser shell pour créer une table nommée "test" vous savez créer un fichier, sauvegarder et éxécuter donc voici le script shell "exemple2.sh" :

#!/bin/bash
table=("CREATE TABLE database_shell.test(code INT(10) NOT NULL , LIB VARCHAR(255))")
#on execute la requete de création
echo $table|mysql

Explication :

ligne 2 : on déclare une variable "table" qui reçoit la chaine de requete de création de la table;

ligne 4 : on éxécute la requete notez que cet instruction permet d'éxécuter la requete en utilisant les informations de connexion à mysql (ici par défaut).

maintenant pour terminer le tutoriel on va insérer des données dans la table, créez un troisième fichier au nom de "exemple3.sh"

#!/bin/bash
donnee1=("INSERT INTO database_shell.test VALUES('1','Mon premier test shell mysql')")
donnee2=("INSERT INTO database_shell.test VALUES('2','Mon deuxieme test shell mysql')")

#on execute
echo $donnee1|mysql
echo $donnee2|mysql

Voila le peu que j'ai pour vous montrer si vous avez des problèmes ou vous voyez des erreurs alors postez les en commentaire.




Tony NGUEREZA 23 Sep 2015, 23h57

1 Commentaire(s)

  • User image
    Jesus SOKAMBY

    j'ai essai mai sa ne marche pas


    04 Déc 2016, 19h09

Vous n'êtes pas connecter veuillez vous connecter ou créer gratuitement un compte pour poster des commentaires

Vous êtes ici :
Accueil Tutoriel Administration Système Intéragir avec MySQL grâce au SHELL