Наконец-то полностью раскрыл тему бэкапа файлов и базы данных сайта на e-mail. Итак, поехали.
Бэкап базы данных в wordpress.
Для бэкапа базы данных тема была давно раскрыта, благо для нее есть свой плагин под названием WordPress Database Backup или его переведенный вариант, который можно взять у lecactus‘a. Плагин очень прост в использование, единственно, нужно дать права на запись во временную папку, куда будет сделан бэкап базы данных и откуда он будет выслан на e-mail.
Помимо ручного бэкапа, плагин позволяет делать бэкап по расписанию. Очень удобная вещь, я считаю, и обязательно маст хэв
Бэкап файлов сайта.
Для бэкапа файлов долго искал скрипт и уже хотел написать свой, но поспрашивав Google еще и еще раз, и что самое главное на английском (поскольку в рунете ничего путного не нашлось), наконец нашел более менее подходящий вариант. Помимо файлов скрипт позволяет бэкапить и базу данных. Очень удобная вещь.
Для использования скрипта, файлы необходимо загрузить на ваш сервер, выполнить необходимые настройки и радоваться результатам
И собственно о настройках.
Папка скрипта содержит довольно подробную справку, но все же пройдусь по ее пунктам.
Скрипт использует smtp класс SWIFT поскольку, как написано в описании, у стандартного phpmailer’а проблемы с отправкой больших файлов.
Все настройки выполняются в файле filesender.php
// ******************************
// setup variables, edit below
// ******************************
$path = ‘/home/username/public_html’;// Указываем папку котору нужно забэкапить
$zipfile = ‘backup’;// название файла бэкапа (рекомендуется не указывать расширение .zip поскольку gmail не любит запускаемые файлы в архивах и может удалить их из письма)
//Important: Select an empty directory here for $zippath
//The script will DELETE EVERY CONTENT of this directory before proceeding
$zippath = ‘/home/username/filesender/tmp’;//папка для складывания бэкапа
$zip_split_size = 9 * 1024 * 1024;//In Megabyte Размеры разделенных файлов в мегабайтах, для чего написано ниже
//Important: Gmail doesn’t allow attachments more than 10 MB.
//And, your SMTP mail account should have necessary quota space
//free to send attachments. For this, set $zip_split_size variable wisely.
//Here, we set it to 9 MB.
$backupdatabase = ‘no’; //Want to backup a database also? ‘yes’ or ‘no’ Здесь можно указать бэкапить базу данных или нет
// configure your database variables below if you want to backup database:
$dbhost = ‘localhost’; // Server address of your MySQL Server
$dbuser = ‘database_username’; // Username to access MySQL database
$dbpass = ‘database_password’; // Password to access MySQL database
$dbname = ‘DATABASE_NAME’; // Database Name
$mailserver = ‘mail.host.com’; //SMTP адрес вашего мэйлсервера
$mailserver_need_authentication=’yes’; //Use username & password for sending mail? ‘yes’ or ‘no’ Требуется ли аутентификация?
$smtpusername = ‘filesender@host.com’; //Имя пользователя (обычно ваш почтовый ящик)
$smtppassword = ‘mailpassword’; //Пароль
$to = ‘your_gmail_address@gmail.com’;// ящик на который нужно высылать бэкапы
$from = ‘filesender@host.com’;// от чьего имени будут высылаться бэкапы
Все вроде бы понятно, но хотелось бы добавить пару важных замечаний, чтобы вы не наступали на те же грабли, и парочку советов:
- Лучше расположить скрипт вне вашей веб директории, ну а если расположили в таковой, то лучше запоролить папку файлом .htaccess (для создания файла можно использовать всякие утилиты)
- Если указываете в кроне файл для исполнения, то не забудьте указать и интерпритатор php!!! Примерно так: /usr/local/bin/php -f /ваш путь/backup/filesender.php
- Нужно задать необходимые права на папку для первичного складывания бэкапа.
- Если веб папка содержит ссылки (в никсоподобных системах есть вайлы-ссылки для удобства, которые позволяют ссылатся на другие файлы или папки) то сделать бэкап не получиться, особенно если ссылки на саму папку. Поскольку архивирование происходит рекурсивно и архиватор пытается добраться до конца вложений папок, которого он никогда не достигнет
У меня были такие ссылки от тог, что автоподдомены были настроены в поддиректорию домена.
После всех настроек скрипт выдал мне на e-mail архивы с бэкапом чего и вам желаю.
Можно и дальше доделать этот скрипт и сделать систему управления бэкапами
Но мне пока этого функционала хватит
Если возникнут вопросы по установке скрипта обращайтесь, попробуем решить
И напоследок хотелось бы добавить, что решил поучаствовать в конкурсе от Ришата и запостить фото своего рабочего места. Раскрою великую тайну и расскажу вам о то, что работаю я в прихожей
Все потому что моему сыну год и 4 месяца и как-то нехорошо и неудобно работать в комнате где спит жена и ребенок, а количество комнат снимаемой мной однокомнатной квартиры не позволяют мне расположиться где-нибудь в другом месте
+ ко всему Жена организовала черный задник (который я как-то покупал для фотосессии сына) и в итоге получился такой мини кабинет в прихожей, в общем смотрите:

1. Фас - Вид из кухни 2. Профиль - Вид из коридора через прихожую

3. Вид поближе
Среди девушек болговедов пока читаю только Ольгу, и хотелось бы поздравить её с прошедшим 8 марта и подарить ей ссылку 
И напоследок хотел добавить еще интриги и рассказать про мясо. Начал плотно изучать яху.трубы, и вскором времени надеюсь исполнить пару тем и рассказать о результатах, так что не переключайтесь и подписывайтесь на RSS, будет много интересного.
Добавить в закладки:
Похожие статьи: