Восстановить удаленные сообщения с форума
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
Пчелкин
- phpBB 3.3.0
- Сообщения: 11361
- Стаж: 16 лет 8 месяцев
- Благодарил (а): 1832 раза
- Поблагодарили: 1358 раз
Re: Вернуть сообщения
Я это делал!
1. Делаем Бекап сейчашний..
2. Восстанавливаемся до удаления.
3. Копируем нужные сообщения в локалку обычным текстом.(удаленные сообщения себе в комп, смотрим время сообщений,записываем)
я восстанавливал 125 сообщений, но восстановил, правда повозился изрядно.
4. Возвращаемся на сегодняшний бекап.
4. Делаем сообщения от себя там, где надо.
5. Устанавливаем им время модом Change Post Time, меняя автора СЕБЯ на нужного.
все.
1. Делаем Бекап сейчашний..
2. Восстанавливаемся до удаления.
3. Копируем нужные сообщения в локалку обычным текстом.(удаленные сообщения себе в комп, смотрим время сообщений,записываем)
я восстанавливал 125 сообщений, но восстановил, правда повозился изрядно.
4. Возвращаемся на сегодняшний бекап.
4. Делаем сообщения от себя там, где надо.
5. Устанавливаем им время модом Change Post Time, меняя автора СЕБЯ на нужного.
все.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
-
Sandro36
- phpBB 1.0.0
- Сообщения: 2
- Стаж: 16 лет 5 месяцев
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: Вернуть сообщения
Быстрее, если только есть имеются знания MySQL и структуры таблиц phpBB.
Если кратко:
Если кратко:
- разворачиваем резервную копию в другую БД.
- в таблице сообщений оставляем только нужные сообщения, которых нет в рабочей БД.
- копируем сообщения в рабочую БД.
- делаем синхронизацию в администраторском разделе.
-
Пчелкин
- phpBB 3.3.0
- Сообщения: 11361
- Стаж: 16 лет 8 месяцев
- Благодарил (а): 1832 раза
- Поблагодарили: 1358 раз
Re: Вернуть сообщения
nissin
А как же с уникальными номерами "удаленных" сообщений? У меня ТАК как вы советуете ТОГДА не получилось..Что-то там БД вякала об одинаковых параметрах таблицы...
А как же с уникальными номерами "удаленных" сообщений? У меня ТАК как вы советуете ТОГДА не получилось..Что-то там БД вякала об одинаковых параметрах таблицы...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: Вернуть сообщения
Пункт 2.
ID у каждого сообщения уникальный, поэтому пересекаться они не могут, тем более я это специальным запросом проверяю.
ID у каждого сообщения уникальный, поэтому пересекаться они не могут, тем более я это специальным запросом проверяю.
-
Пчелкин
- phpBB 3.3.0
- Сообщения: 11361
- Стаж: 16 лет 8 месяцев
- Благодарил (а): 1832 раза
- Поблагодарили: 1358 раз
Re: Вернуть сообщения
То есть ID сообщения, которое я удалил с форума больше не заполняется в БД?
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
-
bullion
- phpBB 1.2.0
- Сообщения: 11
- Стаж: 17 лет 3 месяца
- Благодарил (а): 1 раз
Re: Восстановить удаленные сообщения с форума
а как это сделать? Есть какой-нибудь запрос для этого? Вручную, не реально же искать и удалять
ЗЫ: У меня такая проблема: удален пользователь с 1000 постами + еще удалено около 1500 постов другого пользователя. Но есть бэкап БД до удаления. С даты этого бэкапа уже появилось много новой инфы и пользователей.
Как восстановить удаленные посты и пользователя без потери новых данных?
-
nissin
- phpBB 3.0.4
- Сообщения: 2229
- Стаж: 18 лет 9 месяцев
- Откуда: Астана
- Благодарил (а): 7 раз
- Поблагодарили: 344 раза
Re: Восстановить удаленные сообщения с форума
Нужны знания MySQL. Например удаляем сообщения, которые есть в другой таблице:
DELETE FROM ... WHERE post_id IN (SELECT post_id from ...)Re: Восстановить удаленные сообщения с форума
Я так понимаю, что без знаний, чайнику лучше не соваться, т.к одним запросом дело не обойдется? 
-
Shredder
- Former team member
- Сообщения: 2266
- Стаж: 17 лет 9 месяцев
- Благодарил (а): 283 раза
- Поблагодарили: 584 раза
Re: Восстановить удаленные сообщения с форума
В архиве 2 скрипта, topics_restore.php для восстановления удалённых тем и users_restore.php для восстановления пользователей. Делается это так: закачиваете имеющийся бекап в соседнюю БД, открываете скрипт редактором Notepad++ и указываете там настройки этой БД, потом запускаете скрипт и смотрите, что получилось. Перед запуском обязательно делаете резервную копию рабочей БД, на всякий случай.San4 писал(а):а как это сделать? Есть какой-нибудь запрос для этого? Вручную, не реально же искать и удалять! (на форуме, около 15 тыс. постов)
ЗЫ: У меня такая проблема: удален пользователь с 1000 постами + еще удалено около 1500 постов другого пользователя. Но есть бэкап БД до удаления. С даты этого бэкапа уже появилось много новой инфы и пользователей.
Как восстановить удаленные посты и пользователя без потери новых данных?
Если восстанавливать нужно не темы, а посты отдельного пользователя из разных тем, то скрипт для тем нужно модифицировать.
А впредь лучше думайте, прежде, чем кого-то удалять. Если это сделали нерадивые модераторы - оторвите им руки.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Re: Восстановить удаленные сообщения с форума
Попробовал! Пользователь восстановился! 
Но вот, с восстановлением постов проблема.
Просто так, ничего не восстанавливается (скрипт срабатывает, но изменений нет)
В скрипте есть строчка:
Я так понимаю в ней нужно указать ID всех тем форума?
PS:
Удаленные посты присутствовали на 99% в каждой теме. Т.е в сегодняшней БД все старые темы остались, только вот, они сильно «похудели», т.к из них исчезли посты двух активных пользователей. (вот эти посты я хотел бы «вставить» на место (из имеющегося бэкапа)
Попробовал еще сделать так: добавил в скрипт ID одной из тем. И запустил скрипт, но скрипт выдал ошибку:
Но вот, с восстановлением постов проблема.
В скрипте есть строчка:
Код: Выделить всё
// ID нужных вам тем для восстановления, через запятую
$res_array = array(9, 70);PS:
Удаленные посты присутствовали на 99% в каждой теме. Т.е в сегодняшней БД все старые темы остались, только вот, они сильно «похудели», т.к из них исчезли посты двух активных пользователей. (вот эти посты я хотел бы «вставить» на место (из имеющегося бэкапа)
Попробовал еще сделать так: добавил в скрипт ID одной из тем. И запустил скрипт, но скрипт выдал ошибку:
Код: Выделить всё
Общая ошибка
SQL ERROR [ mysqli ]
Duplicate entry '179' for key 'PRIMARY' [1062]
SQL
INSERT INTO phpbb_topics SELECT * FROM phpbb.phpbb_topics WHERE topic_id = 179
BACKTRACE
FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()
FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()
FILE: [ROOT]/includes/db/mysqli.php
LINE: 189
CALL: dbal->sql_error()
FILE: [ROOT]/topics_restore.php
LINE: 44
CALL: dbal_mysqli->sql_query()попытался исправить ошибку :mrgreen:
удалил эту тему из форума. И снова запустил скрипт. На этот раз, все получилось ! тема снова обрела все ранее удаленные посты от этих двух пользователей. Но действие ограничилось лишь этой темой. Ну и исчезли все новые посты (после даты бэкапа). т.е таким способом я просто выборочно восстановил одну тему из бэкапа ) 

