Спонсор поста: о том, как быстро обновить движки на 28 сайтах.
Хотел я сегодня написать пост о сайтах для заработка на трафике, но меня попросили рассказать, как перенести сайт с одного хостинга на другой. Решил, что отвечать на такой вопрос в ICQ – это слишком долго и пользы для меня будет не много. Поэтому, убивая одним выстрелом двух зайцев, пишу о переносе сайта здесь. Думаю, подобный материал когда-нибудь кому-нибудь пригодится.
Если вас достал медленный или постоянно «падающий» хостинг, скажите ему «до свидания!» и переезжайте на другой, более стабильный и быстрый.
Проще всего переносить с хостинга на хостинг html – сайты без базы данных (чаще это MySQL). Тут достаточно просто скопировать все файлы себе на комп и залить их на новый хост. Другое дело, когда ваш сайт – это не просто набор html и css файлов, а движок (CMS) с базой данных. Не зависимо от того, что у вас за CMS (WordPress, DLE, Drupal, joomla или другая) нужно проделать 7 простых шагов :
1) Нужно добавить ваш домен к новому хостингу. Если вы регистрировали хостинг и при регистрации указали домен, то он добавится автоматически. Если это еще один домен, то нужно добавить его в веб – панели. Для этого:
Заходим в веб – панель управления вашего нового хостинга (CPanel, Directadmin и др.), ищем блок «Домены» – «Дополнительные домены» (в разных панелях названия разные, но суть одна и та же). Создаем дополнительный домен.

2) Изменить DNS в настройках домена. Обычно, после регистрации хостинга, приходит письмо с данными хостинга, в которых есть информация о DNS. Выглядит это примерно так:
Наши ns-сервера:
| NameServer1: ns5.eskhosting.com
| NameServer2: ns6.eskhosting.com
То есть, заходим в панель, где регистрировали домен и в настройках домена заменяем старые DNS на DNS нового хостинга. ДНС будут обновляться от нескольких часов до суток.
3) Пока обновляется DNS нужно сделать дамп базы данных MySQL. Для этого заходим в веб-панель управления вашего старого хостинга. Чаще всего это CPanel или Directadmin.
В CPanel ищем блок «Базы данных» -> phpMyAdmin (в Directadmin тоже что-то подобное, если не найдете, то можно набрать http://vashdomain.ru/phpMyAdmin) и попадаем в утилиту управления БД – phpMyAdmin.
В левой колонке выбираем нужную нам базу данных и кликаем на нее.

После чего появится список всех таблиц базы данных. Также сверху будут доступны операции над БД, нам нужен Экспорт:
Во вкладке «Экспорт» нам нужно настроить параметры экспорта. А именно, выделить все таблицы, «на всякий случай» добавить инструкции “DROP TABLE / VIEW / PROCEDURE / FUNCTION”, и убрать инструкции “IF NOT EXISTS”, поставить галочку у «Сохранить как файл» и если желательно упаковать базу gzip. После нажатия на кнопку ОК, дамп базы данных будет сохранен на вашем жесть каком жестком диске.
Все, что нужно указать в экспорте для переноса сайта, я выделил на картинке.
4) Создаем базу данных на новом хостинге. В веб-панели управления находим блок «Базы данных» и выбираем «Мастер баз данных MySQL». На первом шаге вас попросят ввести имя базы данных:

На втором шаге вам предложат создать пользователя для базы данных. Если у вас уже есть пользователь, то на этом можно остановиться, пройти в «Базы данных MySQL» и «Предоставить доступ пользователю к базе», выбрав все привилегии. Если же пользователя еще нет или просто хочется создать нового, проделываем второй шаг:

Запоминайте или запишите данные о пользователе базы данных, они вам еще пригодятся.
На третьем шаге выделяем все привилегии и переходим на следующий шаг:

После этого вам напишут что-то типа:
“Пользователь cereal00_9seo был добавлен к базе cereal00_vit.”
5) Теперь нужно импортировать дамп вашей базы данных в созданную на третьем шаге базу. Для этого заходим в phpMyadmin нового хостинга. Выбираем в левой колонке вашу базу данных. Переходим во вкладку «Импорт», выбираем файл с дампом БД, который получился на втором шаге и жмем кнопку ОК.
После этого ваша база данных наполнится таблицами и все должно быть ок.
6) Перемещаем файлы. Нужно скопировать все файлы с старого хостинга себе на компьютер. Лучше всего использовать для этой цели фтп-клиент (FlashFXP, Far, CuteFTP и пр.).
*Нужно скопировать все файлы, которые имеют отношение к вашему сайту.
Как только все файлы будут скопированы, их можно заливать на новый хостинг, используя все тот же фтп-клиент. После того, как все файлы залиты, нужно установить права доступа на те файлы, которые требуется.
7) Изменить данные о базе данных в конфигурационном файле. Если это WordPress, то нужно редактировать файл wp-config.php. Изменить там имя базы данных, MySQL имя пользователя и MySQL пароль базы данных. MySQL сервер чаще всего остается без изменения – localhost.
Вот и все, перенос сайта завершен успешно. В принципе, никаких проблем возникнуть не должно. Хотя иногда бывают различные непонятки. Например, кодировка вдруг становится кракозябрами, в этом случае нужно поэкспериментировать с кодировкой экспорта базы данных. Или не работают внутренние страницы (просто пишет not found или что-то в этом роде). Для исправления этой ошибки нужно установить права доступа на файл .htaccess и обновить его. (в WordPress это делается в настройках ЧПУ).
Если возникнут какие-то вопросы или сложности с переносом сайта / блога на другой хостинг, пишите в комментариях. Также читатели скажут вам спасибо, если поделитесь с какими проблемами вы столкнулись при переносе сайта и как их решили.


147 Responses to Перенос сайта на другой хостинг
Светлана 18.02.2012
-Проверьте наличие таблицы в мускуле -‘название базы.wp_options
-А ее и нет(
Сергей 18.02.2012
Найдите ее в дампе скопируйте и сделайте SQL запрос.Если в дампе нет ,то на старом хосте (если еще остался) сделайте только ее дамп
Светлана 18.02.2012
В дампе нет. А на старом хосте ее быть не может, так как, я сайт с локалки переношу. И в том файле, который найти не может, в название стоит та новая база, которая создана у меня на этом хосте.
Сергей 18.02.2012
Нужна таблица wp_options ,а название базы любое может быть.
Светлана 18.02.2012
Поиски закончились очередной ошибкой)) на этот раз- #1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘) COLLATE OR `cid` LIKE CONVERT(_utf8 ‘%wp_options%’ USING ) COLLATE OR `type`’ at line 1
я думаю, уже проще заново контент залить, не так много его и было.
Спасибо за помощь!
Сергей 18.02.2012
Это наверно ошибка SQL запроса в PhpMyAdmin.Неправильно запрос сделали.
Николай 13.03.2012
Уважаемый Сергей! Помогите мне исправить ошибку. Не переносится БД MySQL с хостинга на Денвер. Всплывает такая информация:
Your configuration file contains settings (root with no password) that correspond to the default MySQL privileged account. Your MySQL server is running with this default, is open to intrusion, and you really should fix this security hole.
The mbstring PHP extension was not found and you seem to be using multibyte charset. Without mbstring extension phpMyAdmin is unable to split strings correctly and it may result in unexpected results.
BOR 01.04.2012
Не получается файл конфигурации configuration.php импортировать в новую базу данных. Что делать?
Сергей 01.04.2012
А зачем? В конфигах прописывают подключение к БД но не импортируют.
Reger 02.04.2012
То есть CMS по второму разу устанавливать не надо? Нужно всего лишь перекинуть файлы и поменять название базы данных и имя пользователя бд?
Сергей 03.04.2012
Нет не надо.
Старый хост: Скачиваете сайт,делаете дамп Бд
Новый хост: Заливаете архив с сайтом,создаете БД, импортируете в нее дамп,в конфигах прописываете подключение к созданной БД
Сергей 03.04.2012
P.S Конечно же делегируете домен
Алина 05.04.2012
Подскажите пожалуйста,что надо проделать,чтобы создать сайт с нуля на новом хостинге с имеющимся уже доменом?
Сергей 05.04.2012
1 Определиться с тематикой сайта
)
2 Установить движок сайта (у большенства хостинг провайдеров есть пакет предустановленных CMS – Webaps)
3 Подогнать существующий шаблон под тематику сайта, или скачать и установить новый схожей тематики шаблон ( можно купить
4 Наполнить контентом
5 И конечно же заняться оптимизацией.
Приблизительно такой алгоритм действий.
Александра 28.04.2012
Даже не верила, что все так просто! Каково же было удивление когда все получилось и тем более с первого раза. Огромное спасибо!
Илья 17.05.2012
Перенёс сайт на другой хостинг, изменил dns сервера, вообщем всё сделал, прошло более суток, (более того, whois показывает новые dns cервера, т. е. всё обновилось) а сайт отображается со старого хостинга. Как быть? Остаётся только ещё ждать?
Илья 17.05.2012
И ещё, на старом хостинге нужно что-делать, удалять? Это может повлиять как-то?
Сергей 17.05.2012
Как Вы узнали что сайт идет со старого хоста
Сергей 17.05.2012
Адрес сайта ,новый IP какие