Backup & Restore¶
Sauvegarde de la base MongoDB courante¶
La commande suivante fait une sauvegarde de la base de données courante, et peut prendre quelques heures (penser à un tmux
pour reprendre la main plus tard si nécessaire) :
[Vers un point de montage disposant de suffisamment d'espace pour une sauvegarde de la base] # MONGO_DATE=$(date '+%Y%m%d') ; mkdir -p /data/backup-mongo$MONGO_DATE # mongodump -u cpsmongo -p canopsis -d canopsis -o /data/backup-mongo$MONGO_DATE/
> db.stats() { "db" : "canopsis", "collections" : 35, "objects" : 20 827 775, "avgObjSize" : 1903.0303928288067, "dataSize" : 39635888840, "storageSize" : 47567834864, "numExtents" : 153, "indexes" : 125, "indexSize" : 26848643136, "fileSize" : 92230647808, "nsSizeMB" : 16, "dataFileVersion" : { "major" : 4, "minor" : 5 }, "extentFreeList" : { "num" : 0, "totalSize" : 0 }, "ok" : 1 }
Restauration de la sauvegarde MongoDB¶
Après avoir vérifié que la commande mongodump
précédente a fonctionné, on peut effacer puis réimporter la base, afin que MongoDB puisse purger l'espace de stockage qui était encore réservé par les données supprimées.
Suppression de la base courante :
# mongo admin -u admin -p admin > use canopsis [s'assurer de bien avoir une sauvegarde OK avant d'exécuter la commande suivante !] > db.dropDatabase() > exit
Restauration de la sauvegarde. Cette étape peut, à nouveau, prendre quelques heures :
# mongorestore -u admin -p admin /data/backup-mongo$MONGO_DATE/