Как восстановить базу данных
Дата: 21.11.2008 | Автор: Игорь Квентор | Рубрика: WordPress, Вопрос/Ответ |
Тэги: phpMyAdmin, база данных, восстановление базы данных
Блог на Вордпресс — замечательная штука! Масса возможностей, интуитивный и понятный движок. Все ништяк! Но однажды вдруг ни с того, ни с сего вы обнаруживаете, что часть слов стала отображаться “вопросиками” или иными кракозябрами, а что-то совсем потерялось. Ну а совсем уж мрачное дело, когда посреди экрана висит что-то вроде: “Вас хакнул Вася Терминатор. Бойтесь!” или от хостера пришло письмо, что при переезде из Москвы в Америки потерялась по дороге именно ваша база данных, и ее, увы, не восстановить.
Когда я рассказывал о плагинах для ВП, то так же упоминал о плагине wp-db-backup. Если вы до сих пор его не используете, то настоятельно рекомендую поставить и активировать, а в настройках указать еженедельную отсылку базы данных на ваш е-мейл. Туда она (база) будет приходить в сжатом виде, и ее в любой момент можно будет восстановить в случае потери или иных катаклизмов.
Каким же образом можно восстановить БД? Для начала нужно зайти в свой аккаунт на хостинге и там найти раздел под названием phpMyAdmin. Возможно, система попросит вас заново ввести логин и пароль.
Заметьте! Не “Базы данных MySQL” и не “Мастер баз данных MySQL”, а именно сам движок phpMyAdmin.

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

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

Таким образом, вы просто заливаете на новый хостинг движок Вордпресс, меняете в файле config.php имя базы и имя пользователя (это понятно: новый хостинг, соответственно, новые префиксы имен), но не устанавливаете ВП заново через ссылку вида:
http://www.ваш_сайт.ru/wp-admin/install.php
а сразу начинаете пользоваться блогом как и раньше. Ибо база у вас восстановлена, а стало быть и логины/пароли тоже.
Точно так же вы можете восстановить установленную ранее базу. Однако мой вам совет: если база относительно небольшая (максимальный размер: 2,048Кб), то лучше удалите старую базу совсем и создайте новую, заменив имя и пароль. Ну, мало ли.
Почему такой размер — 2,048Кб? Дело в том, что на самом деле phpMyAdmin является удобным инструментом по управлению базами, но не слишком хорошо подходит для восстановления резервных копий. Особенно если копия довольно внушительных размеров. На такой случай лучше воспользоваться сторонними инструментами. Например, Sypex Dumper. В свое время, когда у phpMyAdmin ещё не было возможности разбивать экспортируемый файл на части, то восстановить базу более указанного размера через phpMyAdmin было практически невозможно.
Что еще можно полезного найти здесь? Например, у вас частично поломалась база, и частично блог отображается в “вопросиках”, либо вообще выдается грозное сообщение, что у вас все “Ворнинг” (Warning) и т.п. Вы так же заходите в phpMyAdmin, кликаете по имени базы, и внимательно смотрите в таблицы, особенно в колонку “Размер”. Если вдруг обнаружите, что в какой-либо строчке размер равен 0 (при том, что база не новая), то это явный признак, что таблица поломалась. Тогда выделим ее галочкой слева, затем внизу находим выпадающее меню “С отмеченными:” и в нем выбираем “Восстановить таблицу”.
Если нулевых размеров не обнаружилось, то отмечаем все строки и проделываем с ними ту же самую операцию. Зачастую это помогает починить базу без ее переустановки.
Комментарии (18) на запись “Как восстановить базу данных”
Трэкбеки
Оставить комментарий












Спасибо огромное! Все просто и понятно!
Но хочется, знать, а что еще можно и, наверное. нужно делать с БД, кроме как выполнять резервное копирование, восстанавливать таблицы. Я вот обнаружила, что у меня много ревизий для одного поста и удалила их. А что еще полезно сделать?
:) Ларис, я думаю, что лучше лишний раз в БД не забираться. Можно такого наворотить, что потом уже точно не починишь. Хотя если есть желание со всем там разобраться, то лучше тогда почитать подробный мануал по настройке БД MySQL. Там в phpMyAdmin как раз есть ссылка на него.
Можно просто загрузить архив бекапа в панели хостинга MySQL Menu / в DirectAdmin обычно так делаю.
Могут возникнуть ошибки при работе?
Вы не планируете написать свой список обязательные плагинов для wp? и на первое место anti XSS чтобы было поменьше записей типа “Вас хакнул Вася Терминатор. Бойтесь!”
Интересно было бы посмотреть список
Значит самое полезное для БД - не трогать без особой нужды. О кей!
2 Студент: да в общем то я уже выписал в посте о плагинах все те, что использую сам.
Что касается загрузки бэкапа в виде архива, то можно конечно. На досуге посмотрю как это делается и возможно отпишусь в этом же посте.
Игорь, а можно Вас попросить в продолжение темы написать (с картинками), как настроить плагин резервного копирования БД с отправкой на е-майл. Ну, ни как у меня на почту никакие письма с БД не приходят. А что делаю не так, не пойму.
Хорошо! Хотя там нет ничего сложного. :)
Игорь, для вас может и нет, а для нового в этом деле пользователя это сложновато. Я когда впервые myadmin открыл вообще побоялся что-то трогать.
:) Нет, я имел в виду настройку плагина в ВП. Там просто в разделе Управление нужно зайти в подраздел Бэкап и активировать пункт “раз в неделю” в “Бэкапе по расписанию”. Справа будет в окошке уже подставлено мыло, куда будет отправляться база. Если там ничего нет, то нужно самостоятельно вписать мыльце. Кстати, если блог долго не обновляется, то, соответственно, и бэкапов нет.
Был бы благодарен, если бы описали процедуру переноса БД с одного хоста на другой, или с компа на хост, а то я в этом не бум-бум. Заранее спасибо.
Русский, принцип переноса тот же: заходим в phpMyAdmin на старом хостинге, слева в списке кликаем по имени базы, которую собираемся переносить, затем справа вверху находим вкладку Экспорт и нажимаем на нее. В открывшемся окне будут настройки экспорта базы по-умолчанию. Обратите внимание, чтобы в панели “Экспорт” был включен тип SQL. Далее внизу справа кликаете по кнопке “Пшел”. Получите текстовый вайл в окне. Его копируем и сохраняем где-нить, обозвав любым именем. А потом действуете как описано в этой статейке :)
Вот спасибо! Сначало сам полдня пытался с помощью “импорта” востановить поломанную базу, а оказалось все намного проще.
Здравствуйте. Боюсь что-то делать восстановление, у меня архив не этой прогой сделан, а через ftp скопирован, а сам файл с базой 77,3 МБ такой большой файл то же можно восстановить? Спасибо за статью, понравилась.
Здравствуйте, Наталья! В ближайшее время напишу пост про сохранение и восстановление больших баз данных
Спасибо за информацию. Сутки сайт висел без единой записи, до хостера не докричаться.Оказалось нужно было просто восстановить таблицу одним кликом.
Спасибо, дорогой и уважаемый Игорь за нужную информацию! Во всей выдаче Яндеса по запросу “восстановить сайт вордпресс из бекапа” только у вас нашла четкую статью, понятную мне, руководствуясь которой по шагам восстановила свой сайт, который сама же и расковыряла необдуманными действиями. Мегареспект!
А я, кстати, и ваш подписчик, “Верстка 3-х колоночного шаблона” тоже очень пришлась по душе, всё понятно, четко, талантливо написано, все у меня получилось по этому руководству.
Дай вам Бог здоровья и удачи!
И вам спасибо на добром слове! :)