Бекап через SSH.

Вариант 1. Полный.

Под полным бекапом сайта я понимаю это снятие дампа базы данных всех таблиц и всех файлов сайта.

База данных.

mysqldump -u USERNAME -pPASSWORD --default-character-set=UTF8 DATABASE_NAME > backup/sitedb_backup.sql
  • USERNAME — имя пользователя
  • pPASSWORD — пароль(буква «p», не опечатка, такой синтаксис)
  • DATABASE_NAME — база данных
  • backup — папка в которую поместить бекап
  • sitedb_backup.sql — БД

Файлы.

tar cvvzf backup/backup_site.gz  web

папка web

Вариант 2. Исключаем лишнее.

Делаем бекап с исключением лишних данных и БД и не нужных файлов.

База данных.

Выполняем две команды.

mysqldump -u USERNAME -pPASSWORD --default-character-set=UTF8 --no-data DATABASE_NAME > backup/sitedb_backup.sql
mysqldump -u USERNAME -pPASSWORD --default-character-set=UTF8 --no-create-info --ignore-table=DATABASE_NAME.TABLE_NAME --ignore-table=DATABASE_NAME.TABLE_NAME --ignore-table=DATABASE_NAME.TABLE_NAME ... DATABASE_NAME >> backup/sitedb_backup.sql
  • —no-data — бекап таблиц без данных
  • —ignore-table=DATABASE_NAME.TABLE_NAME — делает бекап структуры таблицы без сохранения данных

Файлы.

tar cvvzf backup/backup_site.gz --exclude='sites/*' --exclude='images/*' web

Создаем архив без папки sites и images.