SlideShare une entreprise Scribd logo
1  sur  3
HOREL Laëtitia
SAUVEGARDE D’UNE BASE DE DONNÉES AVEC CRONTAB
Mise en situation
Avant de débuter, une question s’impose : qu’est-ce que Crontab ? C’est un service sous
Linux qui permet de modifier des fichiers de configuration du programme Cron. Ces fichiers vont
nouspermettre d’exécuterdestâchesetde définirlapériode danslaquelle la tâche doit s’exécuter.
Dans notre cas, nous allons via Crontab sous CentOS 7, paramétrer une sauvegarde d’une base de
données SQL à un instant T.
Notre distribution contient actuellement un serveur SQL avec une base de données nommée
« communes ». Par peur de perte d’informations, nous souhaitons en faire une sauvegarde.
Pour ce faire, deux méthodes existent : la sauvegarde manuelle ou la sauvegarde planifiée avec
Crontab.
Sauvegarde manuelle
Afinde sauvegardernotre base, nousexécutonslacommande suivante :
# mysqldump -u [username] –p[password] [database_name] >
[emplacement_fichier et nom_fichier.sql]
Dans notre cas, celanousdonne:
# mysqldump –u root –p communes >/bin/backup/sauv_communes.sql
Cependant, cette méthode présente un gros inconvénient. Il faut être obligatoirement devant la
machine etlancerla commande pourpouvoirsauvegarder. C’est pourquoi il existe des services tels
que Crontab pour pouvoir automatiser la tâche.
Sauvegarde avec Crontab
Crontab est en résumé un planificateur de tâches sous forme de service installé par défaut
sur toutes les distributions Unix et Linux. Afin de créer la sauvegarde, il faut taper la commande
crontab –e.Cette commande nous permet d’éditer le fichier crontab.
Normalement,lorsde la première ouverture, le fichier est vide. C’est à cet endroit que nous allons
créer la planification.
Elle se constitue de la façon suivante :
 1ère
valeur : les minutes (min) à laquelle la tâche doit s’effectuer : valeur allant de 0 à 59.
 2ème
valeur : l’heure (h) de l’exécution de la tâche : valeur allant de 0 à 23.
 3ème
valeur:le jour dumois (jdm) à laquellelatâche doit s’effectuer : valeur allant de 1 à 31.
 4ème
valeur : le mois (m) de l’exécution de la tâche : valeur allant de 1 à 12.
 5ème
valeur:le jour de la semaine (jds):valeurallantde 0 à 6, sachantque 6 = dimanche.
HOREL Laëtitia
Si par exemple nous voulons que la tâche s’effectue tous les jours, il faudra alors assigner la valeur
*qui signifie « tous ».
S’ensuit la commande que nous souhaitons effectuer puis rediriger votre résultat vers un fichier.
Dans notre cas, nousvoulonsfaire une sauvegardede labase de données« communes ».Nousallons
donc remplacerlacommande àexécuterparla commande manuelle vue plushaut. Voici ce que cela
donne :
(min)(h)(jdm)(m)(jds)mysqldump--user=‘nom_utilisateur’ --password=’mdp_base_de_données’
nom_base_de_données>chemin_et_fichier_sauvegarder
Ci-dessousse trouve unexemple concret de lacommande àrajouterdansle fichiercrontab :
39 22 * * * mysqldump --user=’root’--password=’root00*’communes>/bin/communessave.sql
Afinde traduire,lasauvegarde de ma base de données « communes » se fera tous les jours à 22h39
et se sauvegardera sur le fichier « communessave.sql » dans le dossier« bin »
Pour vérifier le résultat de notre commande, il faut ouvrir le fichier de sauvegarde grâce à la
commande :vi /bin/communessave.sql(dans le cas de l’exemple ci-dessus).
Dans ce fichier doit se trouver tout un tas d’informations sur notre base de données.
Si une erreur quelconque se produisait lors de la sauvegarde, un mail est envoyé à root et un
message s’affichedansLinux vousindiquantoùtrouverle mail. L’erreur est affichée afin de corriger
le problème.
Sauvegarde par script :
Ce script nouspermettrade personnaliserle nomdufichierde sauvegardeparladate et l’heure de
sa création.
HOREL Laëtitia
Nousavonsd’abordcréé un dossierscriptsdans /root/pour créernos scripts.Puisnousavons créé
un fichierbackup_bdd.shendonnantlesdroits d’éxecutionpourrootavecchmod700.
Dans backup_bdd.sh,nousrajoutonsleslignessuivantes :
fori in communes; do
mysqldump –-user=’root’ –-password=’motpasse_bdd’ $i> ${i}_`date +"%Y-%m-
%d"`.sql
tar jcf ${i}_`date +"%Y-%m-%d"`.sql.tar.bz2 ${i}_`date +"%Y-%m-%d"`.sql
rm ${i}_`date +"%Y-%m-%d"`.sql
Pour le tester, il faut lancer la commande sh backup_bdd.shpuis se rendre dans /root/scripts pour
vérifier que le fichier est présent. S’il est présent, c’est que le script fonctionne. Le nom du fichier
doit apparaître de la façon suivante : comunes_2015-10-23
Il suffira alors de refaire un crontab –e en ajoutant la commande ci-dessus en plus des valeurs de
planification. Ce qui donne :

Contenu connexe

Tendances

Websockets par Martin Moizard
Websockets par Martin MoizardWebsockets par Martin Moizard
Websockets par Martin MoizardCocoaHeads France
 
Le blog technique de laurent besson
Le blog technique de laurent bessonLe blog technique de laurent besson
Le blog technique de laurent bessonboblapointe
 
Webinar Nuxeo LTS 2017
Webinar Nuxeo LTS 2017 Webinar Nuxeo LTS 2017
Webinar Nuxeo LTS 2017 Nuxeo
 

Tendances (7)

Hdfs
HdfsHdfs
Hdfs
 
Les fonctions MariaDB - LeMug.fr
Les fonctions MariaDB - LeMug.frLes fonctions MariaDB - LeMug.fr
Les fonctions MariaDB - LeMug.fr
 
Websockets par Martin Moizard
Websockets par Martin MoizardWebsockets par Martin Moizard
Websockets par Martin Moizard
 
Le blog technique de laurent besson
Le blog technique de laurent bessonLe blog technique de laurent besson
Le blog technique de laurent besson
 
Webinar Nuxeo LTS 2017
Webinar Nuxeo LTS 2017 Webinar Nuxeo LTS 2017
Webinar Nuxeo LTS 2017
 
Pratique
PratiquePratique
Pratique
 
Presentation drush
Presentation drushPresentation drush
Presentation drush
 

Similaire à Compte rendu crontab

Mop export-dataloader-salesforce-en-ligne-commande
Mop export-dataloader-salesforce-en-ligne-commandeMop export-dataloader-salesforce-en-ligne-commande
Mop export-dataloader-salesforce-en-ligne-commandeCyrille Coeurjoly
 
Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas yassine87
 
Comment sauvegarder correctement vos données
Comment sauvegarder correctement vos donnéesComment sauvegarder correctement vos données
Comment sauvegarder correctement vos donnéesEDB
 
ch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfsalmanakbi
 
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande BertrandCaron4
 
A la découverte de redo
A la découverte de redoA la découverte de redo
A la découverte de redoThierry Gayet
 
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...Microsoft Technet France
 
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppthidaeli2001
 
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open sourceCell'IE
 
TP1 Big Data - MapReduce
TP1 Big Data - MapReduceTP1 Big Data - MapReduce
TP1 Big Data - MapReduceAmal Abid
 
Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Sylvain Leroy
 
Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Jean-Baptiste Claramonte
 
Tout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasTout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasBruno Bonnin
 

Similaire à Compte rendu crontab (20)

Outils front-end
Outils front-endOutils front-end
Outils front-end
 
Présentation1
Présentation1Présentation1
Présentation1
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Mop export-dataloader-salesforce-en-ligne-commande
Mop export-dataloader-salesforce-en-ligne-commandeMop export-dataloader-salesforce-en-ligne-commande
Mop export-dataloader-salesforce-en-ligne-commande
 
Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas Mise en place de Nagios3 pas à pas
Mise en place de Nagios3 pas à pas
 
Comment sauvegarder correctement vos données
Comment sauvegarder correctement vos donnéesComment sauvegarder correctement vos données
Comment sauvegarder correctement vos données
 
ch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdfch2-hadoop-L3-2023-4p (1).pdf
ch2-hadoop-L3-2023-4p (1).pdf
 
Tuto crontab
Tuto crontabTuto crontab
Tuto crontab
 
Noyau
NoyauNoyau
Noyau
 
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
 
A la découverte de redo
A la découverte de redoA la découverte de redo
A la découverte de redo
 
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...
[Tuto] Sql backup : Comment sauvegarder une base de données SQL Server dans l...
 
openFrameworks
openFrameworksopenFrameworks
openFrameworks
 
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt
380768495-admin-linux-Sauvegarde-et-restauration-cours-4-1-ppt.ppt
 
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source
(Tutoriel) Installer et Utiliser Huginn - Outil de veille open source
 
TP1 Big Data - MapReduce
TP1 Big Data - MapReduceTP1 Big Data - MapReduce
TP1 Big Data - MapReduce
 
Boot
BootBoot
Boot
 
Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Rappels Modularisation application C/C++
Rappels Modularisation application C/C++
 
Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019
 
Tout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasTout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pas
 

Plus de Laetitia HOREL

Plus de Laetitia HOREL (11)

Binder1
Binder1Binder1
Binder1
 
Tableau veille juridique
Tableau veille juridiqueTableau veille juridique
Tableau veille juridique
 
Veille mars 2015
Veille mars 2015Veille mars 2015
Veille mars 2015
 
Veille janvier 2016
Veille janvier 2016Veille janvier 2016
Veille janvier 2016
 
Veille février 2016
Veille février 2016Veille février 2016
Veille février 2016
 
Mail chimp octobre 2015
Mail chimp octobre 2015Mail chimp octobre 2015
Mail chimp octobre 2015
 
Mail chimp novembre 2015
Mail chimp novembre 2015Mail chimp novembre 2015
Mail chimp novembre 2015
 
Wds procedure
Wds procedureWds procedure
Wds procedure
 
Nagios doc
Nagios docNagios doc
Nagios doc
 
Procedure ocs et glpi
Procedure ocs et glpiProcedure ocs et glpi
Procedure ocs et glpi
 
Procédure alfresco word
Procédure alfresco wordProcédure alfresco word
Procédure alfresco word
 

Compte rendu crontab

  • 1. HOREL Laëtitia SAUVEGARDE D’UNE BASE DE DONNÉES AVEC CRONTAB Mise en situation Avant de débuter, une question s’impose : qu’est-ce que Crontab ? C’est un service sous Linux qui permet de modifier des fichiers de configuration du programme Cron. Ces fichiers vont nouspermettre d’exécuterdestâchesetde définirlapériode danslaquelle la tâche doit s’exécuter. Dans notre cas, nous allons via Crontab sous CentOS 7, paramétrer une sauvegarde d’une base de données SQL à un instant T. Notre distribution contient actuellement un serveur SQL avec une base de données nommée « communes ». Par peur de perte d’informations, nous souhaitons en faire une sauvegarde. Pour ce faire, deux méthodes existent : la sauvegarde manuelle ou la sauvegarde planifiée avec Crontab. Sauvegarde manuelle Afinde sauvegardernotre base, nousexécutonslacommande suivante : # mysqldump -u [username] –p[password] [database_name] > [emplacement_fichier et nom_fichier.sql] Dans notre cas, celanousdonne: # mysqldump –u root –p communes >/bin/backup/sauv_communes.sql Cependant, cette méthode présente un gros inconvénient. Il faut être obligatoirement devant la machine etlancerla commande pourpouvoirsauvegarder. C’est pourquoi il existe des services tels que Crontab pour pouvoir automatiser la tâche. Sauvegarde avec Crontab Crontab est en résumé un planificateur de tâches sous forme de service installé par défaut sur toutes les distributions Unix et Linux. Afin de créer la sauvegarde, il faut taper la commande crontab –e.Cette commande nous permet d’éditer le fichier crontab. Normalement,lorsde la première ouverture, le fichier est vide. C’est à cet endroit que nous allons créer la planification. Elle se constitue de la façon suivante :  1ère valeur : les minutes (min) à laquelle la tâche doit s’effectuer : valeur allant de 0 à 59.  2ème valeur : l’heure (h) de l’exécution de la tâche : valeur allant de 0 à 23.  3ème valeur:le jour dumois (jdm) à laquellelatâche doit s’effectuer : valeur allant de 1 à 31.  4ème valeur : le mois (m) de l’exécution de la tâche : valeur allant de 1 à 12.  5ème valeur:le jour de la semaine (jds):valeurallantde 0 à 6, sachantque 6 = dimanche.
  • 2. HOREL Laëtitia Si par exemple nous voulons que la tâche s’effectue tous les jours, il faudra alors assigner la valeur *qui signifie « tous ». S’ensuit la commande que nous souhaitons effectuer puis rediriger votre résultat vers un fichier. Dans notre cas, nousvoulonsfaire une sauvegardede labase de données« communes ».Nousallons donc remplacerlacommande àexécuterparla commande manuelle vue plushaut. Voici ce que cela donne : (min)(h)(jdm)(m)(jds)mysqldump--user=‘nom_utilisateur’ --password=’mdp_base_de_données’ nom_base_de_données>chemin_et_fichier_sauvegarder Ci-dessousse trouve unexemple concret de lacommande àrajouterdansle fichiercrontab : 39 22 * * * mysqldump --user=’root’--password=’root00*’communes>/bin/communessave.sql Afinde traduire,lasauvegarde de ma base de données « communes » se fera tous les jours à 22h39 et se sauvegardera sur le fichier « communessave.sql » dans le dossier« bin » Pour vérifier le résultat de notre commande, il faut ouvrir le fichier de sauvegarde grâce à la commande :vi /bin/communessave.sql(dans le cas de l’exemple ci-dessus). Dans ce fichier doit se trouver tout un tas d’informations sur notre base de données. Si une erreur quelconque se produisait lors de la sauvegarde, un mail est envoyé à root et un message s’affichedansLinux vousindiquantoùtrouverle mail. L’erreur est affichée afin de corriger le problème. Sauvegarde par script : Ce script nouspermettrade personnaliserle nomdufichierde sauvegardeparladate et l’heure de sa création.
  • 3. HOREL Laëtitia Nousavonsd’abordcréé un dossierscriptsdans /root/pour créernos scripts.Puisnousavons créé un fichierbackup_bdd.shendonnantlesdroits d’éxecutionpourrootavecchmod700. Dans backup_bdd.sh,nousrajoutonsleslignessuivantes : fori in communes; do mysqldump –-user=’root’ –-password=’motpasse_bdd’ $i> ${i}_`date +"%Y-%m- %d"`.sql tar jcf ${i}_`date +"%Y-%m-%d"`.sql.tar.bz2 ${i}_`date +"%Y-%m-%d"`.sql rm ${i}_`date +"%Y-%m-%d"`.sql Pour le tester, il faut lancer la commande sh backup_bdd.shpuis se rendre dans /root/scripts pour vérifier que le fichier est présent. S’il est présent, c’est que le script fonctionne. Le nom du fichier doit apparaître de la façon suivante : comunes_2015-10-23 Il suffira alors de refaire un crontab –e en ajoutant la commande ci-dessus en plus des valeurs de planification. Ce qui donne :