Jeux Web.org

  • Home
  • Forums
  • Photos
  • Boutique
    • Boutique JeuxWeb
    • Panier
  • Nous contacter
    • JeuxWeb
    • Jeux Hébergés
JeuxWeb
  • Accueil
  • News
  • Qui Sommes Nous ?
  • Créateur de Jeu ?
  • Jeux de Plateau
  • Aider JeuxWeb
  • Liens
Les Guides
  • Codes et Scripts
  • Articles
  • Jeux de Plateau
Nos Jeux
  • MountyHall
  • Monde de Thäanis
  • Braldahim
cisco ccna
cisco ccna


Nom d"utilisateur / mot de passe perdu ?
Pas encore inscrit ? Inscription

postheadericon Backup de base de donnée

postdateiconJeudi, 13 Avril 2006 14:47 | postauthoriconÉcrit par Yves Savonet | PDF 
La copie a chaud de bases de données MySql m'étant assez étrangère et de réputation assez peu flatteuse, nous avons pris l'habitude de réaliser nos backups en dumpant les tables des bases de données. Le but de ce script est donc, via une simple commande Bash, de créer un dump archivé de chacun des tables d'une base de donnée ciblée.
Le script permet de réaliser un backup quotidien dans une structure permettant une historisation sans limite.

Fichier db-backup.sh

#!/bin/bash 
# Paramètres de connexion à la DB
MYSQL_USER="dbuser"
MYSQL_PASSWORD="pwddbuser"
MYSQL_DB="mountyhall_main"
# emplacement des binaires de mysql
MYSQLDUMP_BIN="/usr/bin/mysqldump"
MYSQL_BIN="/usr/bin/mysql"
# emplacement du présent module de backup
BACKUP_ROOT = "/home/mountyhall/db-backup"
FIC_LISTE_TABLES="${BACKUP_ROOT}/tbl_${MYSQL_DB}.txt"
BACKUP_DIR="${BACKUP_ROOT}/${MYSQL_DB}/"`date '+%Y'`"/"`date '+%m'`"/"`date '+%d'`
echo "################################################"
echo "Debut du backup : "`date '+%F %H:%M:%S'`
# Creation du repertoire de backup
echo "Creation du repertoire de backup"
mkdir -p ${BACKUP_DIR}
echo "Creation OK"
# Recuperation de la liste des tables
echo "Recuperation de la liste des tables a sauvegarder"
${MYSQL_BIN} -u${MYSQL_USER} -p${MYSQL_PASSWORD} -N -B -e 'SHOW TABLES' ${MYSQL_DB} > ${FIC_LISTE_TABLES}
echo "Recuperation OK"
# Backup des tables echo "Sauvegarde des tables"
for TABLE in `cat ${FIC_LISTE_TABLES}` do
echo "##### Table ${TABLE} #####"
echo "Debut : "`date '+%F %H:%M:%S'`
${MYSQLDUMP_BIN} --opt -u${MYSQL_USER} -p${MYSQL_PASSWORD} --default-character-set=latin1 ${MYSQL_DB} ${TABLE} | gzip > ${BACKUP_DIR}/${TABLE}.gz
echo "Fin : "`date '+%F %H:%M:%S'`
done
echo "Fin sauvegarde tables"
echo "Fin du backup : "`date '+%F %H:%M:%S'`
echo "################################################"

Vous pouvez le voir, nous disposons ainsi d'une archive quotidienne du dump classé dans l'arborescence
./nom de la DB/année/mois/jour/

Il suffira alors de lancer votre script en bash via le cron du serveur et de mettre le résultat dans un fichier de log par exemple.

bash /home/mountyhall/db-backup/db-backup.sh >> /home/mountyhall/db-backup/db-backup.log 2>&1

{mos_fb_discuss:6}

< Précédent

Mis à jour (Lundi, 04 Octobre 2010 10:15)

 

postheadericon Derniers Codes & Scripts

  • Générer un flux rss (2e partie)
  • Afficher une image "sécurisée"
  • Temps d'exécution d'un script
  • Compter le nombre de joueurs actifs
  • Backup de base de donnée

postheadericon Codes & Scripts Populaires

  • Pack Graphique : comment l'implémenter
  • Jet de Dés
  • Code Image - éviter les doubles publications
  • Authentification d'une zone
  • Créer un fil RSS

postheadericon Articles en rapport

  • Compter le nombre de joueurs actifs
  • Temps d'exécution d'un script
  • Afficher une image "sécurisée"
  • Générer un flux rss (2e partie)
  • Installation et maj de phpMyAdmin

Copyright © 2010 JeuxWeb.org asbl.
All Rights Reserved.

Designed by VYS - DungeonMaster (Yves Savonet).