![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 ![]() |
В этой небольшой заметке мы рассмотрим как сделать быстрый (без утомительного хождения по web-интерфейсу панели управления хостингос и часовых ожиданий на скачивание кучи мелких файлов через FTP) backup web-площадки, используя только ssh и ftp. Для примера я взял распространенный хостинг nic.ru ... Как известно любая web-площадка состоит из собственно файлов CMS (сайта) и MySQL базы данных, для успешного бекапа нам необходимо взять и то, и другое.
Соединяемся по SSH и даем последовательно следуюшие команды: Код cd /home/идентификатор_хостинга/идентификатор_сайта tar -czvf идентификатор_хостинга.tar.gz docs mysqldump --opt --single-transaction --user=имя_пользователя_mysql --password=пароль_пользователя_mysql --host=сервер_mysql название_базы_данных > название_базы_данных.sql tar -czvf название_базы_данных.tar.gz название_базы_данных.sql rm название_базы_данных.sql Например, если идентификатор хостинга у нас kaluga, идентификатор сайта kaluga.ru, имя пользователя mysql - kaluga_mysql, сервер MySQL - kaluga.mysql, название БД - kaluga_db, то команды примут следующий вид: Код cd /home/kaluga/kaluga.ru tar -czvf kaluga.tar.gz docs mysqldump --opt --single-transaction --user=kaluga_mysql --password=secretpass --host=kaluga.mysql kaluga_db > kaluga_db.sql tar -czvf kaluga_db.tar.gz kaluga_db.sql rm kaluga_db.sql Поясню что же мы тут делаем. Файлы сайта kaluga.ru хранятся на хостинге в папке /home/kaluga/kaluga.ru/docs, поэтому мы сначала переходим в папку /home/kaluga/kaluga.ru, а затем с помощью архиватора сжимаем папку docs (содержащую webroot, т.е. корневую директорию сайта) в архив kaluga.tar.gz. Затем делаем дамп базы данных MySQL в файл kaluga_db.sql и сжимаем его в архив kaluga_db.tar.gz, после чего исходный (несжатый) файл дампа удаляем. Далее только останется зайти по ftp на ftp.идентификатор_хостинга.nichost.ru и скачать к себе архивы kaluga.tar.gz и kaluga_db.tar.gz. Все это проделывается буквально за считанные минуты, архивация файлов происходит на сервере, что достаточно быстро, и остается только выкачать через FTP два готовых файла. p.s. Распаковка архива (в случае восстановления из backup'а) осуществляется с помощью команды tar -xzvf kaluga.tar.gz (в результате будет создана папка docs), ну а импорт в базу MySQL с помощью команды: Код mysql --user=kaluga_mysql --password=secretpass --host=kaluga.mysql --database=kaluga_db < kaluga_db.sql , естественно, дамп базы MySQL надо предварительно распаковать с помощью все того же tar с ключами -xzfv. Для тех кто малознаком с *nix командами - полезны будут всего две - cd (сменить директорию) и ls (отобразить список файлов в директории), так, после распаковки, дав команду ls - мы можем убедиться в том, что распакованные файлы у нас действительно на месте.
-------------------- |
|
|
![]()
Сообщение
#2
|
|
Newbie ![]() Группа: Пользователи Сообщений: 1 Регистрация: 22.7.2014 Пользователь №: 1946 ![]() |
возможно это всё оформить в виде скрипта?
|
|
|
![]() ![]() |
Текстовая версия | Сейчас: 12.6.2025, 17:09 | |
|