Резервное копирование (бэкап) сайта

Здравствуйте, дорогие друзья и читатели моего блога! Сегодня я хотел бы рассказать вам об одной очень важной вещи. В чем заключается главный шаг к достижению успеха в том или ином начинании? В том, чтобы всегда иметь под рукой план «Б». Любой, кто может быстро и аккуратно придумать или применить запасной план действий, всегда будет на высоте. Данный принцип касается и вебмастера, холящего и лелеящего свой ресурс, как родного ребенка.

Резервное копирование (бэкап) сайта

Все мы знаем, что практически вся информация, содержащаяся на сайте, хранится на хостинге. Но всегда может случиться так, что провайдер попросту подведет, совершит ошибку или просто произойдет нелепый несчастный случай. Результатом этого всего может стать потеря всех данных нашего ресурса, то есть фактически его смерть. Как же быть в такой ситуации? Каков наш план «Б», если такой случится?

Ответом на эти вопросы становится бэкап сайта — резервное копирование всех его данных. Процесс обязательный для всех и будет большой и непоправимой ошибкой, если его не провести.

Зачем нужно резервное копирование

Я уже достаточно подробно описал, что ждет рассеянного и глупого веб-мастера при отсутствии копий сайта и проблемаху хостинг-провайдера. Но если рассматривать чисто техническую сторону вопроса, то потеря данных сайта означает потерю всего контента, содержащегося на сайте: статей, комментариев, фотографий и прочей нужной, зачастую довольно дорогой информации. Ручное восстановление всего этого с нуля может обойтись в копейку, не говоря уж о временных затратах. Вообще я считаю, что отсутствие резервных копий – одна из самых распространенных ошибок при продвижении сайта.

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

Зачем нужно делать бэкап сайта

Думаю, я уговорил вас создать бэкап сайта. Осталось лишь разобрать пару мелочей:

  • Разновидности резервных копирований;
  • Процесс копирования файлов ресурса;
  • Работа по копированию базы данных сайта.

Эти вопросы достаточно сложны и объемны, но разбираться в них должен уметь каждый веб-мастер.

Виды бэкапов

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

Итак, выделяют FullBackup (полное копирование), DifferentialBackup (дифференциальное копирование), IncrementalBackup (добавочное копирование) и пофайловый метод.

1. FullBackup

Это создание полной копии файлов с сохранением абсолютной всей информации. Проводить подобный процесс каждый день технически весьма затруднительно. Я, как и многие мои коллеги, советую делать это раз в неделю. Хотя разумеется, можно и раз в месяц или даже раз в квартал.

2. DifferentialBackup

Дифференциальное резервирование — это копирование и сохранение лишь тех файлов, которые были изменены с момента окончания полного копирования данных.

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

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

3. IncrementalBackup

Первое подобное копирование создает резервные копии лишь тех файлов, которые были изменены со времени последнего полного бэкапа (точно также, как и с дифференциальным). Последующие же добавочные резервирования затрагивают лишь те файлы, которые подверглись изменению со времени последнего именно добавочного резервирования. Тут следует уточнить, что старые версии файлов никуда не пропадают и не перезаписываются. Новые копии создаются совершенно автономно и хранятся отдельно.

4. Пофайловый метод

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

Теперь же вернемся непосредственно к теме нашей сегодняшней беседы.

Бэкап статичного ресурса

Создание резервной копии предполагает не только сохранение информации, но и дизайна, навигации, различных видео- и аудиофайлов, фотографий и прочих изображений. Однако прямое копирование файлов, являющихся основой ресурса, будет недостаточно. Такой вариант подойдет лишь статичным ресурсам, которые не работают с CMS (системой, контролирующей контент).

Те же сайты, что используют базы данных, к примеру, работают на WordPress или Joomla, требуют к себе более пристального внимания. Бэкап сайта такого плана условно можно разбить на два этапа:

  • Копирование всех файлов;
  • Копирование баз данных CMS.

Если сайт создан на WordPress, сейчас это наиболее популярно, то узнать, какие базы данных он использует, достаточно легко. Для этого находим в корневом каталоге wp-config.php файлик. Здесь есть все, что нам нужно. Открываем и находим вот такие строчки:

Параметры базы данных

Теперь у нас есть все необходимое и можно спокойно создавать резервную копию базы.

Уточню, что некоторые CMS вполне позволяют создавать копии различных баз данных. Это могут быть какие-либо рубрики, меню и тому подобное. Это, кстати, можно использовать и для того, чтобы переносить базу на любой другой сайт, работающий на том же движке, если такое понадобится.

Теперь же вернемся к теме нашей беседы и займемся первым этапом создания бэкапа сайта.

Копирование файлов

Стоит сразу уточнить, что копировать придется абсолютно все файлы, в том числе фавикон, логотип и даже идентификационные текстовые файлы Яндекс и Google.

Существует два достаточно простых способа создания копии: вручную и с помощью ftp. В целом не очень важно, какой именно хостинг используется, резервирование будет проводиться идентичными способами. Начнем, пожалуй, с ftp.

Создание копии файловой системы с помощью ftp-клиента

Я рекомендую использовать для работы TotalCommander. Он достаточно удобный и практичный. Впрочем, многие используют и такую программку, как Filezilla, но это уж на вкус и цвет…

Итак, что же вообще такое ftp-клиент? Говоря по-научному, это программа, позволяющая оперативно и аккуратно работать с различными файлами через интернет. Я попробую дать пошаговую инструкцию того, как скопировать файловую систему с помощью одной такой программы, а именно TotalCommander.

  1. Первым делом нам нужно создать соединение с тем хостингом, где хранятся файлы нашего сайта. В правом окне менеджера должна быть открыта та папка, где мы будем хранить копии. Соединение с сервером по ftp
  2. Делаем активной левую панель и нажимаем кнопку FTP (комбинация горячих клавиш ctrl+F). В появившемся окне следует создать или добавить новое подключение. Нажимаем соответствующую кнопку и получаем окно вот такого вида:Создание нового соединения по ftp
  3. Заполняем все строки так, как я указал (или как-то по-своему, если разбираетесь в этом лучше).
  4. Теперь можно переходить непосредственно к копированию. В правой части TotalCommander’а у нас все еще открыта та папка, где будет храниться резервная копия, а в левой нам необходимо открыть источник.
  5. Для этого активируем левое окно и нажимаем кнопку ftp. Теперь уже мы можем спокойно соединиться с нашим хостингом. Жмем нужную кнопку, вводим пароль и попадаем туда, куда нужно.
  6. Нас интересует папка public_html. Если у вас много сайтов, то ищем данную папку в папке того сайта, резервную копию которого мы создаем. Перетягиваем ее вправо и следуем инструкциям. Особых указаний здесь нет.Перенос файлов на компьютер по ftp

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

Единственным серьезным минусом данного способа создания резервной копии файлов является его скорость. Бэкап сайта будет создан не так быстро, как вам бы того хотелось.Filezilla работает примерно по такому же принципу и примерно с такой же скоростью. Разница лишь в расположении дерева файлов и назначении левого и правого частей окна программы.

Теперь же поговорим о ручном копировании файлов.

Создание копии файловой системы сайта вручную

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

Находим там вкладку или панель файлового менеджера и открываем ее. Мы оказываемся в святая-святых панели управления нашими файлами. Нетрудно догадаться, что нам нужно найти те файлы и папки, резервную копию которых мы и собираемся создать. Как и в предыдущем случае, пусть это будет папка public_html.

Теперь пара слов о том, как заархивировать данные, чтобы их удобнее было копировать. Делается это с помощью функций самого хост-провайдера. Тот же TimeWeb, к примеру, дает возможность и заархивировать папки, и сразу их скачать, что очень удобно. Если вы используете именно его, то проблем с копированием файловой системы вручную возникнуть не должно.

Теперь же переходим к более сложному вопросу, а именно копированию баз данных. Бэкап сайта, использующего их, без данной процедуры обойтись никак не сможет.

Создание резервной копии баз данных (БД)

Итак, к примеру, мы используем хостинг TimeWeb. Устанавливая CMS, вы наверняка сталкивались с предложением о создании новой БД или использовании старой и установке на нее пароля. Если пароль установлен не был, ничего страшного. Позже поставим общий.

Теперь же нам следует открыть панель управления БД MySQL.

Вход в панель управления базами данных

Я советую подключить функцию полного доступа. Это существенно облегчит работу. Вводим или придумываем и вводим новый пароль. Теперь мы можем видеть весь список БД и войти в phpMyAdmin, не вводя больше никаких данных. По окончании всех операций не забудьте выключить данную функцию в целях своей безопасности.

Система предложит нам войти в phpMyAdmin, что мы и должны проделать. Теперь мы видим список всех БД (надеюсь, вы знаете, какой сайт какую из них использует).

Работа с базами данных

Выбираем нужную БД и щелкаем по ней мышью, открывая таким образом окно со списком таблиц, содержащихся в ней.

Вот так выглядят записи в базе данных

Нас интересует вкладка «Экспорт». Вот ее и открываем.

Экспорт базы данных

По нажатии кнопки «ок» начинается скачивание данных. Не забудьте позже переместить файл в папку для хранения резервных копий. Добавлю еще, что в личном кабинете своего хост-провайдера вы можете также настроить автоматическое копирование баз данных. В этом случае оно будет проводиться в указанное время, а свежая копия будет отправлять на ваш е-мейл. Очень удобно, но надеяться полностью на автоматику едва ли стоит.

Теперь же давайте рассмотрим последний, но не менее важный вопрос на тему восстановления ресурса с помощью сохраненной на компьютере резервной копии его данных.

Как восстановить сайт с помощью сохраненных копий данных

Надо сказать, что большинство современных хост-провайдеров предлагают услугу автоматического копирования баз данных и файлов. Это очень удобная возможность провести восстановление измененного файла или базы данных прямо в личном кабинете. К примеру, тот же TimeWeb дает возможность откатить базу данных до одной из трех последних резервных копий.

Резервные копии данных сайта на хостинге

Восстановление файлов проводится точно таким же способом, вот только время ожидания отката увеличится.

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

К примеру, мы хотим восстановить определенную БД с помощью копии на нашем компьютере. Для этого заходим в личный кабинет на сайте хостинг-провайдера и открываем менеджер БД. Как именно что тут делать, я уже рассказал, поэтому углубляться не будем. Находим нужную нам БД и открываем список хранящихся в ней таблиц. Далее обратите внимание на вкладку «Импорт». Разумеется, если с помощью экспорта мы копировали на компьютер, то с помощью импорта сможет обратить процесс вспять. Делаем это и, надеюсь, радуемся восстановленной работе вашего ресурса.

Если же требуется восстановление файловой системы, то я советую изначально удалить старую папку, прежде чем копировать новую. Итак, находим нужную папку public_html, выделяем ее и с помощью кнопки «файл» и списка открывшихся команд удаляем старую папку. Если она содержала какой-либо нежелательный код, то он канул в Лету.

Теперь же нам следует закачать «здоровую» папку. TimeWeb предлагает нам сделать это следующим образом:

  • Находим кнопку «архиватор» и выбираем в меню «Закачать и разархивировать»;
  • Выбираем нужный бэкап;
  • Закачиваем его в нужную папку.

Как я уже говорил, проводить полное резервное копирование следует не реже, чем раз в неделю, а то и чаще. Нередко эффективным в восстановлении оказывается лишь самый последний шаг моей короткой инструкции. И в этом случае в выигрыше будет тот, кто создает бэкап сайта достаточно часто, чтобы минимизировать потери в случае порчи данных ресурса.

 

Помните о том, что скупой платит дважды. Это касается не только материальных вопросов, но и вопросов траты самого ценного нашего ресурса — времени. Так, создадите отличный сайт для заработка, но не учтете, что он может внезапно быть утерян на хостинге, а резервных копий не будет. Не доводите до этого! На этом у меня все. Всем пока!

Ваш комментарий

  1. У меня, конечно, лежат копии файлов моих сайтов, но бекап базы данных практически никогда не делаю. В основном пользуюсь услугами хостинг-провайдера majordomo. Никогда, за 10 лет не возникало проблем с потерей данных. Ребята с этого хостинга хранят все данные сайтов за последние 10 дней. Поэтому при систематическом контроле за состоянием сайта, всегда могу сделать откат состояния сайта к любому из последних 10-ти дней. Чем неоднократно пользовался.
    Поэтому, для себя, считаю, делать копии файловой структуры и базы данных сайта лишней рутинной работой. Но, конечно, каждый вправе решать за себя сам! =)

    • Кирилл Тараненко:

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

      • Из приведенных причин вполне серьезно можно отнестись только к наезду силовиков (обстановка в стране нервозная =). Остальное из области фантастики. Да и если представить себе, что силовикам дадут такую возможность, как закрытие дата-центров, то тогда и заниматься бизнесом в Интернете станет бессмысленно — в любое время любой сайт можно будет прикрыть по воле какого-нибудь держиморды (коих все больше появляется на российском небосклоне).
        Нет, я не отрицаю полезность резервного копирования! Но считаю, что в случае с отдельным личным сайтом, который приносит пусть и постоянный, но все же не весь собственный доход его владельцу, организовывать систематический бекап контента не выгодно: слишком велики временные затраты. Тем более, если подобных сайтов несколько! Лишь только в случае если сайт является основным и тем более единственным источником дохода, то можно будет организовывать систему или даже службу резервного копирования. При этом важно, чтобы эти мероприятия, хотя бы, банально, окупались.

        • Кирилл Тараненко:

          Игорь, часто делать не обязательно. Хотя бы раз в месяц. Например, на хостинге настроить бекапы, а раз в месяц скачивать один из свежайших бекапов — это занимает 2 минуты времени и 10 кликов мышки.

  2. Без бекапа нельзя в принципе работать на компьютере. Резервировать нужно обязательно. Иначе можно много чего потерять важного.