2010-03-15 3 views
0

У меня есть резервная копия, созданная из моей базы данных mysql (vbulletin forum v3.8) каждый день. Это около 360 Мб. Он хранится как один текстовый файл в защищенной папке.Автоматическая резервная копия файла на другой сервер?

Я подумываю о получении другого сервера через другой хост и как-то автоматически переводить резервную копию на мой второй сервер каждый день.

Любые идеи о том, как я могу автоматизировать этот процесс? Я думаю о PHP и работе cron.

+0

Я думаю, что PHP и работа cron звучат как хорошая идея. –

ответ

3

Cron определенно. Php, если вам это нравится, но использование bash с mysqldump в сочетании с gzip творит чудеса.

+0

Должен ли я устанавливать скрипт на сервере загрузки или на сервере загрузки? Кроме того, как я могу держать cron? Кажется, если я перееду на 360mb, это закончится до его завершения. THNX – codemonkey613

+0

Cron - это демон ('crond'), который запускает определенные команды в определенное время. Он выполняет команду путем форкирования, и сама команда может работать до тех пор, пока она нравится. Так что проблем нет. Если вы загружаете с FTP, вы должны запустить скрипт на сервере загрузки. (Я бы предложил использовать 'scp' вместо ftp, хотя). –

0

График rsync для передачи файлов (через ssh) с помощью cron (если вы в Linux).

0

Cron + rsync может быть вашим лучшим выбором. Если файл является текстовым, как вы говорите, и изменения «diff», то rsync может использоваться для передачи только обновлений этого файла. Например, кронтаб может выглядеть примерно так:

20 4 * * * rsync -a --delete source/ [email protected]:/path/to/destination/ 

Это синхронизирует удаленную машину один раз в день удаления любых файлов в удаленной копии, которые больше не существуют на исходном компьютере.

В качестве примечания я только что прочитал и заметил, что это резервная копия mysql, поэтому вывод дампа может в конечном итоге содержать двоичный файл, и в этом случае вы, вероятно, захотите просто использовать сервер репликации или скопировать весь файл каждый день. rsync также может быть использован для копии ...

0

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

+0

Na, для этого потребуется приличный второй сервер. Мой форум имеет слишком мало значения для финансирования такого рода деятельности. Я полагаю, что я заплачу $ 2/mon за общий хост, и все, что мне нужно от хоста, - это быть онлайн один раз в день, чтобы он мог вытащить загрузку. lol Это означает, что хозяин не должен иметь хорошую работоспособность или производительность, сохраняя низкие издержки для меня. – codemonkey613

Смежные вопросы