21
11
08

Как восстановить базу данных

Рубрики: WordPress, Вопрос/Ответ
Тэги: , ,

Блог на Вордпресс — замечательная штука! Масса возможностей, интуитивный и понятный движок. Все ништяк! Но однажды вдруг ни с того, ни с сего вы обнаруживаете, что часть слов стала отображаться “вопросиками” или иными кракозябрами, а что-то совсем потерялось. Ну а совсем уж мрачное дело, когда посреди экрана висит что-то вроде: “Вас хакнул Вася Терминатор. Бойтесь!” или от хостера пришло письмо, что при переезде из Москвы в Америки потерялась по дороге именно ваша база данных, и ее, увы, не восстановить.

Когда я рассказывал о плагинах для ВП, то так же упоминал о плагине wp-db-backup. Если вы до сих пор его не используете, то настоятельно рекомендую поставить и активировать, а в настройках указать еженедельную отсылку базы данных на ваш е-мейл. Туда она (база) будет приходить в сжатом виде, и ее в любой момент можно будет восстановить в случае потери или иных катаклизмов.

Каким же образом можно восстановить БД? Для начала нужно зайти в свой аккаунт на хостинге и там найти раздел под названием phpMyAdmin. Возможно, система попросит вас заново ввести логин и пароль.

Заметьте! Не “Базы данных MySQL” и не “Мастер баз данных MySQL”, а именно сам движок phpMyAdmin.

dbex1.gif

Видим слева список наших баз данных. В данном примере она есть лишь одна и называется vasya103_dbe. Кликаем по имени и попадаем на страницу настроек этой базы. Видим под именем запись “Таблиц в базе данных не обнаружено”. Все верно, мы эту базу только что создали для примера, потому там ничего нет. Кстати, этот вариант подходит один в один, если вы переезжаете на другой хостинг.

Вверху ищем вкладку под названием SQL:

dbex2.gif

Появится широкое окно под названием “Выполнить SQL-запрос(ы) к базе данных vasya103_dbe”. Сюда мы просто напросто копируем тот текстовый файл, что плагин wp-db-backup исправно присылал к нам на мыло. Файл этот лучше распаковать и добавлять обычным текстом. Если все сделали верно, то через некоторое время появится сообщение “SQL-запрос был успешно выполнен”. Обновим страницу и увидим, что наша пустая прежде база заполнилась таблицами:

dbex3.gif

Таким образом, вы просто заливаете на новый хостинг движок Вордпресс, меняете в файле config.php имя базы и имя пользователя (это понятно: новый хостинг, соответственно, новые префиксы имен), но не устанавливаете ВП заново через ссылку вида:

http://www.ваш_сайт.ru/wp-admin/install.php

а сразу начинаете пользоваться блогом как и раньше. Ибо база у вас восстановлена, а стало быть и логины/пароли тоже.

Точно так же вы можете восстановить установленную ранее базу. Однако мой вам совет: если база относительно небольшая (максимальный размер: 2,048Кб), то лучше удалите старую базу совсем и создайте новую, заменив имя и пароль. Ну, мало ли.

Почему такой размер — 2,048Кб? Дело в том, что на самом деле phpMyAdmin является удобным инструментом по управлению базами, но не слишком хорошо подходит для восстановления резервных копий. Особенно если копия довольно внушительных размеров. На такой случай лучше воспользоваться сторонними инструментами. Например, Sypex Dumper. В свое время, когда у phpMyAdmin ещё не было возможности разбивать экспортируемый файл на части, то восстановить базу более указанного размера через phpMyAdmin было практически невозможно.

Что еще можно полезного найти здесь? Например, у вас частично поломалась база, и частично блог отображается в “вопросиках”, либо вообще выдается грозное сообщение, что у вас все “Ворнинг” (Warning) и т.п. Вы так же заходите в phpMyAdmin, кликаете по имени базы, и внимательно смотрите в таблицы, особенно в колонку “Размер”. Если вдруг обнаружите, что в какой-либо строчке размер равен 0 (при том, что база не новая), то это явный признак, что таблица поломалась. Тогда выделим ее галочкой слева, затем внизу находим выпадающее меню “С отмеченными:” и в нем выбираем “Восстановить таблицу”.

Если нулевых размеров не обнаружилось, то отмечаем все строки и проделываем с ними ту же самую операцию. Зачастую это помогает починить базу без ее переустановки.

Вебсовет

rss Подпишитесь на RSS


Комментарии (32)

  1. Лариса 21.11.2008 19:49

    Спасибо огромное! Все просто и понятно!
    Но хочется, знать, а что еще можно и, наверное. нужно делать с БД, кроме как выполнять резервное копирование, восстанавливать таблицы. Я вот обнаружила, что у меня много ревизий для одного поста и удалила их. А что еще полезно сделать?

  2. Игорь Квентор 22.11.2008 13:12

    :) Ларис, я думаю, что лучше лишний раз в БД не забираться. Можно такого наворотить, что потом уже точно не починишь. Хотя если есть желание со всем там разобраться, то лучше тогда почитать подробный мануал по настройке БД MySQL. Там в phpMyAdmin как раз есть ссылка на него.

  3. Студент 24.11.2008 05:55

    Можно просто загрузить архив бекапа в панели хостинга MySQL Menu / в DirectAdmin обычно так делаю.
    Могут возникнуть ошибки при работе?

  4. Студент 24.11.2008 06:00

    Вы не планируете написать свой список обязательные плагинов для wp? и на первое место anti XSS чтобы было поменьше записей типа “Вас хакнул Вася Терминатор. Бойтесь!”
    Интересно было бы посмотреть список

  5. Лариса 24.11.2008 11:53

    Значит самое полезное для БД - не трогать без особой нужды. О кей!

  6. Игорь Квентор 25.11.2008 14:15

    2 Студент: да в общем то я уже выписал в посте о плагинах все те, что использую сам.
    Что касается загрузки бэкапа в виде архива, то можно конечно. На досуге посмотрю как это делается и возможно отпишусь в этом же посте.

  7. Лариса 25.11.2008 20:27

    Игорь, а можно Вас попросить в продолжение темы написать (с картинками), как настроить плагин резервного копирования БД с отправкой на е-майл. Ну, ни как у меня на почту никакие письма с БД не приходят. А что делаю не так, не пойму.

  8. Игорь Квентор 25.11.2008 21:29

    Хорошо! Хотя там нет ничего сложного. :)

  9. Шестопалов 13.12.2008 19:56

    Игорь, для вас может и нет, а для нового в этом деле пользователя это сложновато. Я когда впервые myadmin открыл вообще побоялся что-то трогать.

  10. Игорь Квентор 13.12.2008 21:42

    :) Нет, я имел в виду настройку плагина в ВП. Там просто в разделе Управление нужно зайти в подраздел Бэкап и активировать пункт “раз в неделю” в “Бэкапе по расписанию”. Справа будет в окошке уже подставлено мыло, куда будет отправляться база. Если там ничего нет, то нужно самостоятельно вписать мыльце. Кстати, если блог долго не обновляется, то, соответственно, и бэкапов нет.

  11. Русский 14.12.2008 19:02

    Был бы благодарен, если бы описали процедуру переноса БД с одного хоста на другой, или с компа на хост, а то я в этом не бум-бум. Заранее спасибо.

  12. Игорь Квентор 14.12.2008 19:36

    Русский, принцип переноса тот же: заходим в phpMyAdmin на старом хостинге, слева в списке кликаем по имени базы, которую собираемся переносить, затем справа вверху находим вкладку Экспорт и нажимаем на нее. В открывшемся окне будут настройки экспорта базы по-умолчанию. Обратите внимание, чтобы в панели “Экспорт” был включен тип SQL. Далее внизу справа кликаете по кнопке “Пшел”. Получите текстовый вайл в окне. Его копируем и сохраняем где-нить, обозвав любым именем. А потом действуете как описано в этой статейке :)

  13. VSETAC 06.07.2009 12:15

    Вот спасибо! Сначало сам полдня пытался с помощью “импорта” востановить поломанную базу, а оказалось все намного проще.

  14. Наталья 25.11.2009 17:14

    Здравствуйте. Боюсь что-то делать восстановление, у меня архив не этой прогой сделан, а через ftp скопирован, а сам файл с базой 77,3 МБ такой большой файл то же можно восстановить? Спасибо за статью, понравилась.

  15. Игорь Квентор 28.11.2009 12:49

    Здравствуйте, Наталья! В ближайшее время напишу пост про сохранение и восстановление больших баз данных

  16. Владимир Кох 30.12.2009 19:09

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

  17. Mrs_Lazy 21.02.2010 16:31

    Спасибо, дорогой и уважаемый Игорь за нужную информацию! Во всей выдаче Яндеса по запросу “восстановить сайт вордпресс из бекапа” только у вас нашла четкую статью, понятную мне, руководствуясь которой по шагам восстановила свой сайт, который сама же и расковыряла необдуманными действиями. Мегареспект!

    А я, кстати, и ваш подписчик, “Верстка 3-х колоночного шаблона” тоже очень пришлась по душе, всё понятно, четко, талантливо написано, все у меня получилось по этому руководству.

    Дай вам Бог здоровья и удачи!

  18. Игорь Квентор 21.02.2010 23:45

    И вам спасибо на добром слове! :)

  19. Олеся 26.04.2010 20:25

    Здравствуйте, на прошлой неделе пришлось переустанавливать Word press
    базу вроде бы восстановила (во всяком случае таблицы появились) но блог пустой - в чем может быть дело?
    заранее благодарю за ответ

  20. Игорь Квентор 27.04.2010 16:06

    Здравствуйте, Олеся! По всей видимости вы базу не восстановили, а создали заново. Потому и пусто. Таблицы в базе имеют какой-либо размер в Кб?

  21. Олеся 28.04.2010 06:27

    здравствуйте, Игорь,
    размер базы 4,36 мБ, я создала новую базу и в нее скопировала файл wp-db-backup (а старая пустая). Может нужно как то уточнить какую базу использовать?

  22. Игорь Квентор 29.04.2010 13:11

    Олеся, у вас похоже установлены сразу 2 базы с разными именами: одна пустая, другая скопированная. Движок выбрал пустую

  23. Олеся 30.04.2010 14:43

    Игорь, здравствуйте,
    удалила пустую базу - (поскольку не могла войти - пароль не восстанавливался), потом создала новую с тем же именем и скопировала туда базу (файл wp-db-backup) -После попытки открыть блог выдает сообщение:
    “ошибка устновки соединения с базой данных. Это значит либо ваш логин и пароль в файле WP-config.fhp неверны либо нам не удалось связаться с сервером базы данных по адресу localhost”.

  24. Олеся 30.04.2010 14:50

    все получилось - спасибо: поменяла пароль в файле WP-config.fhp

  25. Олеся 01.05.2010 13:23

    Игорь,здравствуйте! Спасибо ВАм за помощь! Может вы сможете подсказать мне еще один вопрос: Блог я восстановила. Обычно я публикую статьи в блог через программу Windows Live Writer. Но после восстановления блога эта программа стала выдавать ошибку : ошибка сетевого подключения к блогу по адресу http://мой_блог.ru/xmlrpc.php. как можно исправить эту ошибку?

  26. Игорь Квентор 02.05.2010 14:45

    Олеся, увы, я никогда не пользовался Windows Live Writer, поэтому ничего сказать по этому поводу не могу

  27. Аркадий 09.05.2010 21:50

    Раньше не использовал данный плагин. Но после того, как сгорел хостинг и я потерял несколько сайтов, сразу же его установил. Это мне урок.

    Вместе с базой нужно сохранять и папку с картинками, иначе их востановить не получится.

    В будущем, если такое случится, я уже буду подготовлен. Сохранил вашу страницу, как инструкцию, на случай необходимости востановления.

  28. SEOblondinka 24.06.2010 20:01

    Пару месяцев я натурально перерыла весь интернет на предмет, как же восстановить сайт из базы данных, сохраненной плагином WP-DB-BackUp. Но вот этой Вашей статьи не нашла(
    Везде была лишь информация, как использовать плагин для формирования базы данных (что в общем-то несложно), а упоминания, что же потом в случае необходимости с этой базой делать НИГДЕ не было(((
    К счастью, тогда мне помог бекап с хостинга. Но исследовательский интерес не давал покоя) Вот сегодня наткнулась на статью, придя на Ваш уже давно знакомый и любимый сайт совсем по другому вопросу. Впрочем так часто бывает) Когда находишь нужное позже - когда теряется актуальность вопроса)
    В любом случае хочу еще раз поблагодарить Вас за полезный ресурс! Спасибо)

  29. Игорь Квентор 25.06.2010 12:55

    SEOblondinka, вэлкам! :)

  30. KosPa 31.07.2010 03:48

    Спасибо большое. Ваша статья очень помогла.

  31. Нурбол 10.08.2010 12:56

    Здравствуйте, Игорь
    Пишу я Вам с Южного - Казахстана, у меня проблема с сайтом (вернее с базами). Суд проблемы такого: я вообще-то новичок, вошел я сайту администраторским интерфейсом (так как я пользоваться базами не умею) и добавил несколько простых новостей. А к утру сайт не открывается, пишет: «Table ‘*.rusfusion_forum_settings’ doesn’t existTable ‘*.rusfusion_forum_settings’ doesn’t existTable ‘*.rusfusion_blacklist’ doesn’t exist Table ‘*.rusfusion_news’ doesn’t exist». Ковырял базу по вашему совету, пробовал восстановить таблицы (нулевых размеров не обнаружилось), все равно сайт не пашет. Помогите, пожалуйста, как восстановить базу? Резервного копии тоже нету.

  32. Игорь Квентор 12.08.2010 12:38

    Здравствуйте, Нурбол! Увы, помочь я вам не смогу. Обратитесь к вашему хостеру, пусть сделают откат на более ранее состояние сайта.

Трэкбеки

Оставить комментарий