Скрипт для создания резервных копий файлов и базы.
Все довольно просто, но есть несколько подводных камней, начнем по очереди:
Создаем файл, например backup.sh и заливаем его на сервер. Если Вы работаете в OS Windows, то в редакторе нужно изменить формат переноса строк с windows на unix (если редактор этого не позволяет, то лучше выбрать другой редактор или работать с файлом сразу на сервере)
Предположим, что сайт лежит в директории /webserver/www , а скрипт мы разместили в /webserver/
Создаем папку для бэкапа /webserver/_BackUp
Конечный вид скрипта
1
2
3
4
5#!/bin/sh zip -r _BackUps/www www mysqldump -uroot -hlocalhost -p123 -B db_name > _BackUps/db_name.sql
Разберем оп очереди
#!/bin/sh – путь до интерпретатора, его можно узнать выполнив команду which sh
zip -r _BackUps/www www - создаем архив из всего содержимого папки www включая подпапки.
mysqldump -uroot -hlocalhost -p123 -B db_name > _BackUps/db_name.sql – создаем дамп базы.
Более общий вид этой строчки:mysqldump -uUser -hHost -pPass -B db_name > _BackUps/db_name.sql
Для того чтобы запустить скрипт, файл нужно сделать исполняемым
chmod +x backup.sh
Запускаем, тут есть одна особенность , непривычная для пользователей windows, нужно не просто написать в консоле backup.sh, обязательно нужно соблюсти такой синтаксис
./backup.sh