Oracle Linux: sauvegarder une base
Par Arnaud Launay, lundi 10 avril 2006 à 19:14 :: Informatique :: rss
Il y a quelques semaines, lors d'une mission, les répertoires contenant une base Oracle en fonctionnement se sont avérés peser plus de 70Go; or, une sauvegarde effectuée sur une machine Windows montrait que le dump de la base ne pesait « que » 1,7Go. Le serveur devant être sauvegardé de façon régulière, il a alors été décidé de ne sauvegarder que le dump, et pas la base "à chaud". Il fallait donc trouver un moyen automatique de sauvegarder la base, moyen qui fût trouvé dans le script Windows qui faisait anciennement les dumps: la commande exp (pour export).
La sauvegarde se fait alors très simplement:
# Attention, utilisation de GNU date OLDDATE=`date -d "8 days ago" +"%Y%m%d"` DATE=`date +"%Y%m%d"` BACKUPDIR="/oracle/backups" USER=utilisateur PASS=password # On passe en utilisateur oracle, on lance la sauvegarde en # spécifiant le fichier de dump et on envoit les logs dans un # fichier de log en complément du dump # enfin, on efface les sauvegardes de 8 jours avant su - oracle -c "exp ${USER}/${PASS} \ file=${BACKUPDIR}/backup-${DATE}.dump \ &> ${BACKUPDIR}/backup-${DATE}.log \ && rm -f ${BACKUPDIR}/backup-${OLDDATE}.*"
À noter, il existe la commande imp (pour import), qui permet d'effectuer l'opération inverse.

Commentaires
1. Le mardi 11 avril 2006 à 13:35, par Marich
2. Le jeudi 15 mars 2007 à 09:45, par David
Ajouter un commentaire