Мануал по переезду от одного хостера к другому

Некоторое время назад мне пришлось переехать от хостера Hosting.UA к Avihost.ru. Причиной было банальное появление лагов в работе сайта (то бишь начались проблемы с производительностью), некоторые другие мелкие неувязочки. Плюс мне не хватало баз данных и по доменам дальше были проблемы.

Сравнить вы можете по ссылкам: мой старый тарифный план Эконом, мой новый тарифный план Avi-3000. Как видите, после переезда я только приобрел по возможностям и сэкономил на стоимости. Кстати, мне приходилось использовать кеширование у старого хостера (иначе подвисал  и долго грузился иногда), на новом же я принципиально пока не ставлю кеш, так как и так все нормально :)

Я долго боялся начать переезжать, так как никогда этого не делал. Но я вывел одно основное правило и одно вспомогательное. Первое необходимо для выживания, второе – для здоровья :)

  1. ДЕЛАТЬ БЕКАП ВСЕГО: ФАЙЛОВ И БАЗЫ.
  2. НЕ ПСИХОВАТЬ.

Банально, не правда ли? Но реально помогает жить. Ну а теперь по порядку расскажу все, что я делал – и вам тоже придется. Актуально для WP.

  1. Так как у меня уже был хостинг у AviHost, то я ничего не заказывал. У кого нет – сначала закажите и убедитесь, что вы можете заходить по фтп и использовать phpMyAdmin.
  2. Сделайте бекап всех ваших файлов каждого вашего домена и поддомена на старом хостинге. То есть в мое случае: я сделал отдельно бекап файлов cosydale.com, отдельно – demo.cosydale.com и отдельно все остальные. Все сохранил в компе.
  3. Добавьте у нового хостера в контрольной панели сначала домены, которые вы хотите перенести, а потом соответствующие поддомены.
  4. После добавления доменов, должны были создаться соответствующие папки (у меня это папки с именем домена в папке pulic_html). В эти папки вы распаковываете бекапы ваших сайтов. То есть бекап cosydale.com я загружаю в папку public_html/cosydale.com и распаковываю, убеждаясь, что сохранена первоначальная структура папок (то есть cosydale.com/wp-content/). Точно также и с поддоменами.
  5. У вас получается скопированы все файлы ваших сайтов в новое место. Но при этом сайт все еще работает у старого хостера.
  6. Делайте бекап вашей базы данных и ВНИМАНИЕ: если вы не хотите потерять ни одного комментария или записи, то с этого момента закройте доступ к вашему сайту. Для этого создайте файл index.html в корне переносимого сайте у старого хостера и впишите туда любую инфу, которую посчитаете нужной, файлик же index.php – переименуйте. Тогда посетители внутренних страниц будут видеть ошибку, а на главной странице будут видеть содержимое вашего index.html.
  7. Бекап БД можно сделать несколькими способами. Вы заходите в переносимую базу, там есть вкладка Экспорт.
    1) Выбираете на ней все таблицы базы, выберите формат SQL и нажимаете Ок (или Пошел) внизу слева страницы – через некоторые время (чем больше база, тем дольше придется ждать) откроется страница с содержимым вашей базы в формате запросов к MySQL. Вы копируете весь этот текст (нажимаете внутри поля, потом на клаве Ctrl+A и Ctrl+C) и вставляете в любой текстовый файл, который сохраняете.
    2) На вкладке Экспорт выбираете все таблицы базы, потом формат SQL, внизу слева ставите архивирование zip и нажимаете Ок (или Пошел). Опять-таки, долго подумав, начнется закачка архив слепка вашей базы, который вы сохраняете в компе.
  8. Повторите пункт 7 для всех баз переносимых доменов/поддоменов.
  9. Заходите в phpMyAdmin нового хостера и создаете базы данных, соответствующих переносимым сайтам. Сколько баз вы экспортировали, столько вы должны сейчас создать, ПРИ УСЛОВИИ, ЧТО ВЫ ПОЛЬЗОВАТЬ ПУНКТОМ 7-1). Если использовали пункт 7-2), то не создавайте базы.
  10. Если в пункте 7 вы пользовались вариантом 1), то вам надо открыть текстовый файл (чем он больше, тем он дольше открывается), скопировать все его содержимое в буфер обмена. Во вновь созданной базе заходите на вкладку SQL и вставляете в поле весь скопированный код. Нажимаете Ок. После этого в базе появятся все таблицы сайта.
    Если использовали в 7 пункте вариант 2), то вам надо в phpMyAdmib зайти на вкладку Импорт, а там выбрать импорт zip архива базы. То есть нажимаете обзор и ищите архив слепка, потом Ок. После закачки у вас появится база с тем же названием, что и у старого хостера, только спереди появится специфический для нового хостера префикс баз.
  11. Повторите пункты 9 и 10 для все ваших доменов и/или поддоменов.
  12. Зайдите по фтп в папки ваших сайтов у нового хостера, найдите там файл wp-config.php. Измените данные о базе, его пользователе и пароле, хосте на новые данные. Не перепутайте базы :)
  13. Повторите пункт 12 для всех переносимых доменов и/или поддоменов.
  14. Зайдите в контрольную панель нового хостинга, узнайте там необходимые dns записи для перехода к ним (можно у саппорта спросить).
  15. Зайдите в контрольную панель старого хостинга и пропишите там эти dns значения для всех переносимых сайтов. Если не можете сделать это сами (как я не мог на hosting.ua, то попросите их это сделать).
  16. Ждите сутки (в худшем случае) и молитесь :)

Я постарался ничего не пропустить. Назвать все возможные проблемы тоже не в состоянии, так что если кто что знает сверх того, что я написал – пишите в комментариях, я буду обновлять запись.

комментариев 11

  1. бакс:

    cлаФФик, куда пропал то?))

  2. Алексей:

    Проблема в том, что я всё делаю, как надо. Но, когда я импортирую БД (не важно каким способом), у меня появляется ошибка 1044 “user такой-то не имеет прав доступа к БД такой-то.”

    И хоть ты стреляй их – нифига не происходит!

    Вот такая запара…

  3. @Алексей:
    Однозначно что-то с переносом записей нахимичил. Надо было связать импортируемые записи с текущим юзером admin. Сколько у тебя пользователей на сайте? Открой любую запись – под ней пишется автор записи – кто отображается?

  4. takprosto:

    Вот и пост по переезду!
    sypex.net – вот еще один вариант для дампа базы.
    16 – пункт не работает ! на бога на дейтесь а сами не плошайте )))

  5. Аршат:

    Привет!
    Устал уже от казахстанских хостеров. Хочу купить хостинг у Авихоста. Что посоветуете, обычный хостинг Авихоста выдержит Buddypress? еще один вопрос:

    не пробовали не перенести а установить с нуля и импортировать со старого?

    • Jettochkin:

      Вопрос не о чем :) сколько пользователей.. сколько посетителей…

      VDS должен быть с не менее чем 512Mb… а дальше – это от нагрузки

    • Jettochkin:

      Кстати, если готовы платить около 70-80$ в месяц за достойный хостинг – смотрите в сторону ДТ в Германии

  6. Аршат:

    2 дня назад перехал на авихост. пока вроде все нормально. но иногда выскакивает 502 бэд гейтуей. это ведь не из-за движка? серверная ошибка?

  1. 29.05.2011

    […] как-то писал вам о том, что надо сделать, чтобы правильно перенести сайт от одного хостера к другому, без потери данных, но в том случае я описал все с […]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *