Это старая копия сайта, дизайн не сохранился; //sorry
get it

Monsqldump.sh Backup Script (MongoDB + MySQL)

Суббота, 14 апреля 2012 г.
Рубрика: Coding
Метки: | | |
Просмотров: 1396
Подписаться на комментарии по RSS

Захотелось автоматизировать backup нужных баз на сервере (используются mongodb & mysql)

Получился нехитрый скрипт, который сливает базы + сжимает их.

Будет время, подружу его с DropBox-ом :>

#!/bin/bash
#-------[COMMON]--------
 ARCH="robo.tar.gz"
 STAMP=`date +%Y-%m-%d`
 DUMP_DIR=/var/baсkups/$STAMP
 OUTDIR1=$DUMP_DIR/mongodb
 OUTDIR2=$DUMP_DIR/mysql
#-------[EXEC]----------
 MYSQLDUMP="$(which mysqldump)" 
 CHMOD="$(which chmod)"
 TAR="$(which tar)"
 MONGODUMP="$(which mongodump)"
 DU="$(which du)"
#-------[MONGO]---------
 MONGO_DBS="robo"
#--------MYSQL---------
 USER="robo"
 PASS="MYSQL_PASS"
 MYSQLDB="robo"
 HOST="localhost"
 CHARSET="UTF8"
[ -d $OUTDIR1 ] || mkdir -p $OUTDIR1
[ -d $OUTDIR2 ] || mkdir -p $OUTDIR2
##------[BACKUP MONGO]-------
  echo -e "Started at (`date`)\n"
  for DB in $MONGO_DBS
  do
     echo -n "DUMPING MONGODB......."
     $MONGODUMP --db $DB --out $OUTDIR1 > $DUMP_DIR/mongo.log \
     && echo "OK" || echo "!!FAIL"
  done
##---------------------------
##------[BACKUP MYSQL]-------
  echo -n "DUMPING MYSQL......."
  $MYSQLDUMP -u $USER -h $HOST -p$PASS $MYSQLDB \
  --default-character-set=$CHARSET > $OUTDIR2/db.$MYSQLDB.sql
  [ -e $OUTDIR2/db.$MYSQLDB.sql ] && echo "OK" || echo "!!FAIL"
##---------------------------
##------[ARCHIVE FILES]------
  echo -n "PACKING GZ......."
  cd $DUMP_DIR && $TAR -czf $ARCH * && echo "OK" || echo "!!FAIL"
##---------------------------
##------[PROTECT FILES]------
$CHMOD -R 700 $DUMP_DIR
MONGO_SZ=`$DU -sh $DUMP_DIR/mongodb | awk '{print $1}'`
MYSQL_SZ=`$DU -sh $DUMP_DIR/mysql | awk '{print $1}'`
ARCH_SZ=`$DU -h $DUMP_DIR/$ARCH | awk '{print $1}'`
echo "-----------------"
echo "MONGO_FILES........$MONGO_SZ"
echo "MYSQL_FILES........$MYSQL_SZ"
echo "$ARCH........$ARCH_SZ"
echo "-----------------"
echo "DONE!"
twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com Google Buzz technorati.com digg.com friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru mister-wong.ru yahoo.com yandex.ru del.icio.us

Оставьте комментарий!

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)

/* Under Construction */

web-parser.ru
r-tools.org
koxa22.livejournal.com