Отправляем бекап базы на gmail.com

Тема в разделе "Администрирование серверов", создана пользователем EugeneVC, 3 дек 2008.

Статус темы:
Закрыта.
Модераторы: mefish, stooper
  1. EugeneVC

    EugeneVC

    Регистр.:
    28 окт 2007
    Сообщения:
    297
    Симпатии:
    83
    Раньше меня напрягало, что бекапы базы храняться на том же сервере, что и сайт. Выкачивать каждый день по 10-20 мегобайт мне не хочется. Я решил отправлять ее на gmail.com.

    Итак имеем VPS под управлением Linux, в моем случае это Debian.

    1) регистрируем аккаунт на gmail.com. Там предоставляется 7 Гб под почту. ПРи размере бекапа базы 10-20M хватит надолго. :)
    2) бекап у меня настроен через cron, в 4 утра запускается скриптик типа

    Код:
    #!/bin/bash
    
    ROOT_PATH=/root/backup
    
    FILE=mysite_ru-`date "+%Y-%m-%d-%H_%M"`.bz2
    /usr/bin/mysqldump  -u root -pyour_pass mysite_ru | bzip2 -c > $ROOT_PATH/$FILE
    
    Скрипт делает дамп mysql базы и запаковывает его в bzip файл и кладет в определенное место - откуда его приходилось тянуть.

    3) Устанавливаем пакет mpack. В debian и ubuntu это можно сделать командой
    apt-get install mpack

    4) Модифицируем скрипт

    Код:
    #!/bin/bash
    
    MAILTO=your_mail@gmail.com
    
    ROOT_PATH=/root/backup
    
    FILE=mysite_ru-`date "+%Y-%m-%d-%H_%M"`.bz2
    /usr/bin/mysqldump  -u root -pyour_pass mysite_ru | bzip2 -c > $ROOT_PATH/$FILE
    
    #send mail
    mpack -s "$FILE" -c application/octet-stream $ROOT_PATH/$FILE $MAILTO
    
    В результате каждый день в 4 утра мы имеем свежий бекап на почте. Не забываем раз в 1-2 месяца вычищать почтовый ящик.


    PS: Я опробовал его на бекапах до 20 Мб. Так же можно и паковать сайты. Для больших обьемов 1Гб я использую rdiff-backup.
     
    antiadmin, Asin и BFox нравится это.
  2. jcrush

    jcrush

    Регистр.:
    10 ноя 2006
    Сообщения:
    692
    Симпатии:
    55
    если база 500мб, такая связка будет работать?
     
  3. EugeneVC

    EugeneVC

    Регистр.:
    28 окт 2007
    Сообщения:
    297
    Симпатии:
    83
    Не пробовал - боюсь что нет, нужно бить на атачи. Для таких обьемов нужно делать примерно так

    есть mysql_dump_old.sql и mysql_dump.sql - старый и новые дампы соответсвенно

    делаем

    Код:
    diff -u mysql_dump_old.sql  mysql_dump.sql > dump.patch
    и уже этот файл dump.patch - кидаем на почту, он гораздо меньше.

    Такой инкрементальный бекап получается.
     
    StirolXXX нравится это.
  4. alexo

    alexo

    Регистр.:
    28 май 2006
    Сообщения:
    311
    Симпатии:
    5
    прости а что такое rdiff-backup.?
    какой допустимый размер атача при гмейл ? 2 ?
     
  5. EugeneVC

    EugeneVC

    Регистр.:
    28 окт 2007
    Сообщения:
    297
    Симпатии:
    83
    rdiff-backup производит резервное копирование одного каталога в другой. Целевой каталог в результате содержит копию исходного каталога. Различия текущей и предыдущей копий исходного каталога сохраняются в отдельном месте, поэтому можно восстановить давно утерянные файлы.

    Ее фишка в том, что она хранит историю изменений и про повторном копировании, копирует только изменившиеся части файлов - чем не хило экономит траффик.

    почитать можно здесь про бекап

    http://www.opennet.ru/base/sys/rdiff_backup.txt.html
     
    alexo нравится это.
  6. unsiker

    unsiker

    Регистр.:
    6 июн 2008
    Сообщения:
    465
    Симпатии:
    172
    как вариант в джимейле есть фильты и можно настроить пересылку баз еще на 1-2 почтовых ящика )))

    ___________
    не держите все яйца в одной корзине
     
  7. alexo

    alexo

    Регистр.:
    28 май 2006
    Сообщения:
    311
    Симпатии:
    5
    EugeneVC, а как поступить если база не маленькая .. т.е. >20mb in sql.gz format.

    Тогда же из надо разбить на куски и кусочками отправить ?

    или есть другой вариант

    Каким будет код скрипта в этом случае ?
     
  8. prokopa

    prokopa

    Регистр.:
    27 июн 2007
    Сообщения:
    402
    Симпатии:
    105
    у гугла есть api.
    можно отправлять файлы >20mb.

    вот можно еще глянуть примеры
    _http://sourceforge.net/projects/gmail-lite/
    _http://sourceforge.net/projects/phpgmailapi/
    _http://sourceforge.net/projects/pgd/
     
  9. alexo

    alexo

    Регистр.:
    28 май 2006
    Сообщения:
    311
    Симпатии:
    5
    спасибо prokopa, сейчас посмотрю, что из себя он представляет.

    Перед этим сделал маленький ресэрч по поводу него и смотри, что я нашел

    source: hттp://www.computerra.ru/gid/rtfm/mail/219665/
     
  10. MikeDDD

    MikeDDD Создатель

    Регистр.:
    20 дек 2006
    Сообщения:
    22
    Симпатии:
    0
    Идея хороша... 7 Gb под бэкап :ay:
    Только вот реализации нормальной я так и не нашёл :nezn:
     
Статус темы:
Закрыта.