Полный бекап сайта через SSH

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

Задачу будем формулировать так: нужно, подключившись по SSH, создать архив содержащий в себе все файлы и базы данных.

1) Первым делом нужно подключиться к серверу. Доступ по протоколу SSH изначально выключен, Вы можете его включить в Панели Управления. Под OS Windows мы рекомендуем использовать программу Putty. Подробно о том, как ее настроить можно почитать здесь.

2) Зайдя на свой аккаунт, нужно сделать бекап базы данных. Для этого создадим директорию mysqlBackup в корне аккаунта.

amanikin@kondr ~ $ mkdir mysqlBackup

Перейдем в mysqlBackup

amanikin@kondr ~ $ cd mysqlBackup

К сожалению, нельзя получить список всех баз на аккаунте, поэтому придется посмотреть их в Панели Управления (далее по тексту ПУ) аккаунтом в разделе "MySQL".

Управление MySQL


Выполним бекап баз данных с помощью команды mysqldump. Синтаксис вызова следующий:

mysqldump -u USERNAME -pPASSWD USERNAME --default-character-set=cp1251 > USERNAME.sql

# Где:
# USERNAME - имя пользователя базы данных (совпадает с именем базы)
# PASSWD   - пароль базы данных
# Обращаем Ваше внимание на то, что между параметром -p и PASSWD не должно
# быть пробела.

После выполнения данной команды для всех БД, в директории mysqlBackup у нас будет лежать дамп всех баз mysql.

amanikin@kondr ~/mysqlBackup $  mysqldump -u amanikin_test1 -p123123 amanikin_test1  /
  --default-character-set=cp1251 > amanikin_test1.sql
amanikin@kondr ~/mysqlBackup $  mysqldump -u amanikin_test2 -p123123 amanikin_test2  /
  --default-character-set=cp1251 > amanikin_test2.sql
amanikin@kondr ~/mysqlBackup $  ls

amanikin_test1.sql  amanikin_test2.sql

3) Теперь, имея полный бекап БД, нужно создать архив сайта. Наиболее распространенный формат это ZIP, так что и архив мы будем создавать в этом формате.

Для создания архива необходимо перейти в корень аккаунта и выполнить команду:

amanikin@kondr ~/mysqlBackup $  cd ~
amanikin@kondr ~ $  tar -cvzf siteBackup_`date '+%Y%m%d'`.tar.gz *

В корне Вашего аккаунта будет лежать файл siteBackup_{дата создания архива}.tar.gz, в котором будет содержаться архив всего содержимого Вашего аккаунта.



Удачной работы! Если возникнут вопросы - напишите нам, пожалуйста, тикет из Панели управления аккаунта, раздел "Помощь и поддержка".