Импорт-экспорт

Появилась такая проблема: в базу данных закралась какая-то ошибка, которую я никак не могу найти (потому что не программист). Скорее всего дело в какой-то строчке, которую оставил один из плагинов. Что я хочу сделать: экспортировать БД с помощью внутренних средств WP (т.е. будут экспортированы только нужные данные – тэги, посты, камменты и т.д.), удалить всю БД и импортировать.
Проблема в том, что импортировать не получается, потому что стоит ограничение на размер файла в 2МБ, а у меня уже столько постов, что файл весит чуть больше 2. Что делать?
Я понимаю, что вообще сама затея с экспортом-импортом очень замороченная, но у меня в БД какая-то ошибка в строках, относящихся к комментированию, выцепить иначе не получится.

Резать XML.

Резать XML.

а как это делать? Есть какие-то туториалы?

Какие еще туториалы? Один раз прочитать описание формата RSS/XML, чтоб с синтаксисом не налажать (ничего военного, тот же HTML только в профиль), включить мозги, расправить руки – и вперед!

Могу и подробно расписать, но не буду, т.к. твердо уверен, что человек, не понимающий что делает, может только всё переломать, сколь подробной не была бы инструкция. 😉

Я кажется разобрался, есть последний вопрос ( и то, для пущей уверенности)
Грубо говоря: если я возьму этот большой файл и вначале вырежу первую половину постов, потом импорт, затем возьму копию этого же большого файла и вырежу второю половину постов – вместе они сложатся и получится то, что надо. Это я уже попробовал.
А что будет, если в обоих импортированных файлах будет одинаковый пост? Он не появится в блоге дважды?

Логику Вы поняли совершенно правильно. Может даже стоит порезать на большее число. Не знаю как новые версии, но старые WP очень медленно импортировали записи, часто падали по таймауту. Насчет дублей точно не скажу, но что-то мне помнится, что WP их отлавливает по полю guid.

Ясно, спасибо.
Не совсем в тему, но все же, может вы знаете.
Можно ли как-то по коду плагина отследить, в какие таблицы он записывает информацию?
Проблема такая: есть старая и новая версия плагина для ветвящихся камментов.
Старая глючит, нужно менять на новую. Но, после обновления отправка камментов вообще ломается. На другом блоге сразу ставлю новую версию – все отлично работает. Вывод: старая версия пишет что-то в базу, что мешает нормально работать новой.
Поэтому я и решил начать всю эту мороку с экспортом-импортом. Но, тут другая проблема: экспортировав БД стандартными методами WP, экспортируются только комменты первого уровня – все ответы на них куда-то прячутся: в рсс камментов они есть, а на странице – нет.

Можно ли как-то по коду плагина отследить, в какие таблицы он записывает информацию?

Конечно. Вот, смотрите. Например, paged-comments.php. В нем по "ключу" $wpdb находим такие строки:
$comment_count = (int)$wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_post_ID = ‘$post->ID’ AND $approved_condition");
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = ‘$post->ID’ AND $approved_condition ORDER BY comment_date ".paged_comments_ordering().$limit_clause);

FROM $wpdb->comments – означает, что используется таблица {prefix}comments.
Если плагин пишет в таблицы, то будет INSERT и/или UPDATE.

Если плагин создает свои таблицы, то в нем должны быть строки типа
CREATE TABLE {$this->table_prefix}alinks_keyphrases (
(это от плагина alinks)

Экспортирую базу данных блога с помощью плагина.
Потом пытаюсь импортировать ее на другой домент, создав новую базу данных. Захожу через phpmyadmin, пытаюсь сделать импорт, а оно мне выдает:

Ошибка

SQL-запрос:

#SKD101|pmoneyr_dvlib|10|2009.04.30 15:50:27|143|108|13|12|2|2|5|1
DROP TABLE IF EXISTS `wp_comments` ;

Ответ MySQL: Документация
#1046 – No database selected

Что делать?

В phpmyadmin сначала выбрать базу, в которую будут импортироваться таблицы.

В phpmyadmin сначала выбрать базу, в которую будут импортироваться таблицы.

Ой, Юрий Дмитриевич! Спасибо Вам большое! Что бы я без Вас делал? В который раз выручаете.

И как всегда, мне не хватает внимательности в таких простых вещах.

Все получилось.

Еще один вопросик:

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

Что-то не так сделал?

А будете обзываться, перестану помогать.

Ой, Борис Дмитриевич! Спасибо Вам большое!..

Это я сказал такое?! Это я такое посмел сказать?! Елки-палки, маразматик!

Это у меня глюки.

Простите, Юрий Дмитриевич! Я просто в таком восторге был от Вашей подсказки, что ошибся в Вашем имени – так торопился сказать спасибо.

Даже не смею уже просить помощи по последнему моему вопросу от такой постыдности. Но все-таки надеюсь на Ваше всепрощение.

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

Я убегаю. Поищите тут и по mywordpress инструкцию по переносу на хостинг, почитайте что и на что в дампе поменять надо. Удачи!

Я убегаю. Поищите тут и по mywordpress инструкцию по переносу на хостинг, почитайте что и на что в дампе поменять надо. Удачи!

Спасибо! Так и сделаю.

Поискал, нашел. Все сделал, все получилось.

На всякий случай, для тех, кто попадет в подобное положение выкладываю подсказку:

Оказывается, надо было еще до импорта базы данных поменять в ней все упоминания о старом домене на, соответственно, новый домен. И все получится.

Anonymous
Отправить
Ответ на: