Раздел помощи SpaceWeb

Миграция сайта при помощи командной строки

12 дек, 2023

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

Перенос содержимого сайта

Для переноса содержимого сайта необходимо поместить содержимое папки с контентом сайта в аналогичную папку на новом аккаунте.

  1. Это можно сделать по протоколу FTP, скачав содержимое сайта на локальный компьютер, затем поместив его в папку public_html на новом аккаунте.
  2. Процесс переноса содержимого сайта можно упростить, воспользовавшись командой rsync, которая выполняется в терминале сервера на старом аккаунте. Доступ к терминалу можно получить, подключившись к серверу по протоколу SSH.

 Команда имеет следующий вид:

rsync -vrtplz папка_с_содержимым_сайта логин@имя_сервера: путь_куда_будет_выполнено_копирование.

Команда:

rsync -vrtplz public_html login@server.sweb.ru:/home/l/login/public_html

скопирует содержимое папки public_html старого аккаунта в папку public_html на новом аккаунте на сервере server.sweb.ru, используя для подключения логин login.

Перенос баз данных

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

  1. Создать дамп базы данных на старом аккаунте

Дамп – это файл, в котором сохраняется вся информация, содержащаяся в базе. Его удобно использовать для переноса содержимого баз данных. Чтобы создать дамп, рекомендуем воспользоваться командой mysqldump, которая выполняется в терминале сервера.
Доступ к терминалу можно получить, используя протокол SSH. Подробно синтаксис команды описан в инструкции "Как перенести базу данных MySQL на хостинг SpaceWeb?".
Если база данных имеет небольшой размер, для создания дампа можно воспользоваться функцией «Экспорт» программы phpMyAdmin. На нашем хостинге она доступна из панели управления, в разделе "Базы данных", или по адресу server.sweb.ru/phpMyAdmin/, где "server" нужно заменить на имя сервера указанное в левой нижней части панели управления.

Например, для сервера VH229 адрес будет иметь вид: vh229.sweb.ru/phpMyAdmin/

В случае использования команды mysqldump файл дампа будет сохранен в папке, из которой выполнялась команда, при использовании phpMyAdmin – он сохранится на Вашем локальном компьютере.

  1. Создать базу данных через раздел Базы данных панели управления

С подробной информацией можно ознакомиться в инструкции.

  1. Перенести файл дампа базы данных со старого хостинга (аккаунта) на вновь созданный

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

Для этого необходимо подключиться по SSH на старый аккаунт и выполнить команду scp, которая имеет вид:

scp файл_дампа логин@имя_сервера: путь_куда_будет_скопирован_дамп.

Команда:

scp dump.sql login@server.sweb.ru:/home/l/login/public_html

скопирует файл dump.sql на сервер server.sweb.ru в папку public_html на новом аккаунте на сервере server.sweb.ru, используя для подключения логин login.

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

Рекомендуем воспользоваться для этого командой mysql, выполненной в терминале сервера. Ее использование также описано в инструкции "Как перенести базу данных MySQL на хостинг SpaceWeb?".
Если база небольшая, для развертывания дампа также можно использовать приложение phpMyAdmin (функцию «Импорт»).