Пропала тема

Проблемы с установкой или работой phpBB 2.0.x? Ищите ответы здесь!
Ullman
phpBB 1.2.0
Сообщения: 13
Стаж: 19 лет 2 месяца

Пропала тема

Сообщение Ullman »

Описание проблемы: Пропала тема. В таблицах базы данных она упоминается, а в форуме не видна. Её записи в БД вроде бы ничем не отличаются от остальных, но про структуру и взаимосвязь полей БД почитать подробно негде. (Тут на форуме товарищ уже интересовался про "почитать", но его обидели :( ).
Если бы тему кто-то удалил, пусть даже случайно, я думаю, она бы и в базе не сохранилась?
И ещё хотелось бы узнать: где сохраняется содержимое записей темы - тексты юзеров. В БД нашёл только заголовки и атрибуты тем.
Вообще-то, пропало несколько тем. И отдельные сообщения внутри целых тем. Если восстановить нельзя, то как хотя бы избегать этого в будущем?
Всем заранее спасибо!

Версия phpBB: 2.0.19
Используемые шаблоны: нет
Используемые моды: Немного по мелочи.
Версия PHP: 4
Используемая СУБД и её версия: MySQL 4.0.22
Ссылка на конференцию: ?
Есть ли у вас тестовый аккаунт: нет
Использовался ли поиск для решения проблемы: А то как же!
Если да, то какие запросы вы использовали: пропала тема, тема не видна, структура БД... ну и ещё всякое.
Stas!

Сообщение Stas! »

Примерно такая же ситуация.
Тема исчезла на глазах.

Хотя в базе есть ее название и сообщения тоже.
Как то можно восстановить?

Добавлено спустя 47 минут 30 секунд:

Странным образом тема вновь появилась
Аватара пользователя
Поручик
Former team member
Сообщения: 3942
Стаж: 19 лет 11 месяцев
Откуда: Оренбург (Южный Урал)
Благодарил (а): 3 раза

Сообщение Поручик »

Ullman писал(а): но про структуру и взаимосвязь полей БД почитать подробно негде. (Тут на форуме товарищ уже интересовался про "почитать", но его обидели
Структура базы данных phpBB
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html
Andrey Y. Ostanovsky
phpBB 1.2.0
Сообщения: 14
Стаж: 18 лет 9 месяцев

Сообщение Andrey Y. Ostanovsky »

Поручик писал(а):Структура базы данных phpBB
Это - не структура. Это список несвязанных таблиц с куцыми комментариями. Спрашивающий же, вполне обоснованно, подозревает, что таблицы:

Код: Выделить всё

phpbb_posts 	      Posts for your board. Each post is part of a Topic.
phpbb_posts_text 	The text for the post
phpbb_topics          Topics for your board. A Forum contains Topics. A Topic contains Posts.
как-то связаны друг с другом. Набор связывающих полей этих таблиц и будет называться "структура базы данных".

Добавлено спустя 4 минуты 54 секунды:

Re: Пропала тема
Ullman писал(а):Вообще-то, пропало несколько тем. И отдельные сообщения внутри целых тем. Если восстановить нельзя, то как хотя бы избегать этого в будущем?
Такое поведение, при отсутствии подозрений на взлом, больше смахивает на результат взаимодействия отложенной записи и ресета машины. Лечить - периодическими бэкапами, плюс искать причину пропадания.
Best regards, Andrey
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 18 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

Andrey Y. Ostanovsky писал(а):Это - не структура. Это список несвязанных таблиц с куцыми комментариями.
Уважаемый, а покликать на названия таблиц, чтобы увидеть ключи, индексы и связи - религия не позволяет? 8)
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Kastaneda
Former team member
Сообщения: 702
Стаж: 20 лет 7 месяцев

Сообщение Kastaneda »

Ullman и Stas!, попробуйте проверить базу с помощью DB Maintenance.
Andrey Y. Ostanovsky
phpBB 1.2.0
Сообщения: 14
Стаж: 18 лет 9 месяцев

Сообщение Andrey Y. Ostanovsky »

Палыч писал(а):
Andrey Y. Ostanovsky писал(а):Это - не структура. Это список несвязанных таблиц с куцыми комментариями.
Уважаемый, а покликать на названия таблиц, чтобы увидеть ключи, индексы и связи - религия не позволяет? 8)
Сколько уровней связи Вы сможете одновременно удержать в голове? :) А что там сможет прочитать тот, кто слабо ориентируется в связанных таблицах - Вы же ему подсказывается, а не мне?

Кстати, ключи и индексы - к связности таблиц, как-то, хмм... Интересно, умеет ли mysql делать составной индекс по двум таблицам?:)
Best regards, Andrey
Аватара пользователя
/DiOs
Former team member
Сообщения: 1139
Стаж: 19 лет 2 месяца
Откуда: Ленинград

Сообщение /DiOs »

Ровно описанный эффект только что получил при удалении мессги из топика при гикнувшемся ***wordmatch.myd, о чем (о гиканье) узнал из появившегося сообщения. Вхожу в форум заново -- нет темы. В базе, разумееется, все пучком -- и тема, и посты, и... С первого взгляда viewforum.php пониманию в этой части не поддался.

Добавлено спустя 58 минут 9 секунд:
Andrey Y. Ostanovsky писал(а):Такое поведение, при отсутствии подозрений на взлом, больше смахивает на результат взаимодействия отложенной записи и ресета машины.
Какие, к дьяволу, отложенные записи, если человек явно пишет:
Ullman писал(а):В таблицах базы данных она упоминается
Подтверждаю: я нашел все посты, все голосование, таймстамп у темы на месте и правильный.
Andrey Y. Ostanovsky писал(а):искать причину пропадания.
Вопрос: в чем причина пропадания? Ответ: ищите причину пропадания. Зумительно.

Добавлено спустя 1 час 47 минут 24 секунды:

Так, со своим случаем разобрался.

Напоминаю, при удалении сообщения из топика на экран выкинуло диагностику об ошибке и побитом файле ***wordmatch.myd, после чего топик исчез.

Уточнение: в конце топика были два сдублированных сообщения, из которых я удалил последнее.

Вскрытие показало: сообщения имели post_id 7071 и 7072. Прибито было 7072, но, судя по всему, сперва прибивается мессага из ***posts и ***posts_text, далее вычищаются таблицы поиска или еще что-то с ними делаетыся (а мы помним, что тут наступил облом), и лишь затем в таблице ***topics исправляется поле topic_last_post_id. Последнего не произошло и там осталась ссылка на несуществующую теперь уже мессагу 7072. В таком случае топик в форуме не отображается безо всяких предупреждений об агрессии. Исправил topic_last_post_id на правильный -- топик сразу появился в списке.

Спасибо за внимание.
И если я неправ, пусть старшие товарищи поправят меня
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 18 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

/DiOs писал(а):Уточнение: в конце топика были два сдублированных сообщения, из которых я удалил последнее.
Во блин, как чуял, все время удалял первое из дубля :) Все руки не доходять склейку поствить...
Спасибо за урок!
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Andrey Y. Ostanovsky
phpBB 1.2.0
Сообщения: 14
Стаж: 18 лет 9 месяцев

Сообщение Andrey Y. Ostanovsky »

/DiOs писал(а):Какие, к дьяволу, отложенные записи, если человек явно пишет:
....
Напоминаю, при удалении сообщения из топика на экран выкинуло диагностику об ошибке и побитом файле ***wordmatch.myd, после чего топик исчез.
Здесь мы видим, как искусственно разложенные грабли в связанных таблицах могут имитировать отложенную запись.:)
Best regards, Andrey

Вернуться в «Поддержка phpBB 2.0.x»