# Миграция с сервера Windows с персональным хостингом

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

- Миграция с сервера с персональным хостингом, к которому у вас есть административный доступ. Этот сценарий включает в себя создание файла описания хостинга, который содержит список клиентов, подписок, дополнительных доменов, почтовых ящиков и так далее, а также указание на расположение данных сайтов и электронной почты на исходном сервере. Файл имеет удобочитаемый формат, охватывает наиболее популярные услуги хостинга и может быть написан на языке YAML или JSON.
- Миграция с сервера с персональным хостингом, к которому у вас нет административного доступа. Этот сценарий подразумевает, что вы вручную перенесете данные веб-контента и дампы баз данных с исходного сервера на целевой. Файл описания хостинга также необходимо создать, но в этом случае он должен содержать указание на местоположение данных веб-контента и дампов баз данных на целевом сервере.

Примечание

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

Если у вас есть административный доступ к серверу, выполните следующие шаги:

1. Войдите на целевой сервер Plesk по RDP.

2. Удостоверьтесь в том, что расширение Plesk Migrator установлено. Если нет, установите его, следуя инструкциям, приведенным здесь.

3. Подготовьте файл с описанием хостинга. Назовите файл `hosting-description.[yaml/json]` в зависимости от выбранного формата и поместите его в папку `%plesk_dir%admin\plib\modules\panel-migrator\backend`. Файл должен содержать список клиентов, подписок, дополнительных доменов, почтовых ящиков и так далее, которые должны быть перенесены с исходного сервера. Вы можете найти примеры файлов описания хостинга здесь.

4. Подготовьте конфигурационный файл мигратора. Назовите его `config.ini` и поместите в папку `%plesk_dir%admin\plib\modules\panel-migrator\backend`. Файл должен содержать информацию о конфигурации исходного сервера и доступе к нему. Используйте в качестве образца пример конфигурационного файла, приведенный здесь.

5. Создайте список миграции, запустив следующую команду:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat generate-migration-list

   Полученный файл будет называться `migration-list` и будет расположен в папке `%plesk_dir%admin\plib\modules\panel-migrator\backend\`. Список миграции – это список объектов (учетных записей клиентов и реселлеров, тарифных планов, доменов и так далее), которые будут перенесены.

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

7. (Необязательно) Проверьте правильность файла описания хостинга, запустив следующую команду:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat validate

   Вы можете прочитать больше о проверке файла описания хостинга здесь.

8. Запустите следующую команду, чтобы начать миграцию:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat transfer-accounts

9. (Необязательно) Выполните дополнительную синхронизацию содержимого с помощью следующей команды:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat copy-content

   Это позволит удостовериться в том, что изменения в содержимом хостинга, которые могли быть сделаны на исходном сервере во время миграции, отражены на целевом сервере. Если вы хотите повторно синхронизировать только определенные типы содержимого, используйте команды `plesk-migrator.bat copy-web-content`, `plesk-migrator.bat copy-mail-content` и `plesk-migrator.bat copy-db-content`.

10. (Рекомендуется) После завершения миграции запустите следующую команду, чтобы проверить работоспособность перенесенных объектов на целевом сервере:

        %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat test-all

    В результате проверки после миграции создается отчет, который сохраняется в файл с именем `test-all-report.<date>` в папке `<PLESK_DATA_DIRECTORY>\var\modules\panel-migrator\sessions\<migration-session>\`. Чтобы узнать расположение папки `<PLESK_DATA_DIRECTORY>` на вашем сервере, откройте командную строку и запустите следующую команду:

        reg query "HKLM\SOFTWARE\Plesk\PSA Config\Config" /v PRODUCT_DATA_D /reg:32

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

    Здесь вы можете посмотреть подробное описание всех проверок после миграции.

Если у вас нет административного доступа к серверу, выполните следующие шаги:

1. Войдите на целевой сервер Plesk по RDP.

2. Удостоверьтесь в том, что расширение Plesk Migrator установлено. Если нет, установите его, следуя инструкциям, приведенным здесь.

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

4. Создайте дампы баз данных, принадлежащих сайтам, которые вы хотите перенести, а затем вручную скопируйте их на целевой сервер.

5. Подготовьте файл с описанием хостинга. Назовите файл `hosting-description.[yaml/json]` в зависимости от выбранного формата и поместите его в папку `%plesk_dir%admin\plib\modules\panel-migrator\backend`. Файл должен содержать список клиентов, подписок, дополнительных доменов, почтовых ящиков и так далее, которые должны быть перенесены с исходного сервера. Вы можете найти примеры файлов описания хостинга здесь.

6. Подготовьте конфигурационный файл мигратора. Назовите его `config.ini` и поместите в папку `%plesk_dir%admin\plib\modules\panel-migrator\backend`. Файл должен содержать информацию о конфигурации исходного сервера и доступе к нему. Используйте в качестве образца пример конфигурационного файла, приведенный здесь.

7. Создайте список миграции, запустив следующую команду:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat generate-migration-list

   Полученный файл будет называться `migration-list` и будет расположен в папке `%plesk_dir%admin\plib\modules\panel-migrator\backend\`. Список миграции содержит список объектов (учетных записей клиентов и реселлеров, тарифных планов, доменов и так далее), которые будут перенесены.

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

9. (Необязательно) Проверьте правильность файла описания хостинга, запустив следующую команду:

       %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat validate

   Вы можете прочитать больше о проверке файла описания хостинга здесь.

10. Запустите следующую команду, чтобы начать миграцию:

        %plesk_dir%admin\plib\modules\panel-migrator\backend\plesk-migrator.bat transfer-accounts