Восстановить удаленные сообщения с форума
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
zeroed
- phpBB 1.4.2
- Сообщения: 70
- Стаж: 17 лет 8 месяцев
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Восстановить удаленные сообщения с форума
Добрый день.
Наш модератор перестарался и удалил большую часть форума.
Есть бэкап базы данных.
Мне надо восстановить старые сообщения, но не тронуть новые.
Какие подвохи меня поджидают? Я не знаю схемы базы, поэтому немного стремно делать это.
Дайте совет.
Наш модератор перестарался и удалил большую часть форума.
Есть бэкап базы данных.
Мне надо восстановить старые сообщения, но не тронуть новые.
Какие подвохи меня поджидают? Я не знаю схемы базы, поэтому немного стремно делать это.
Дайте совет.
-
MAzZY
- Бывший член :)
- Сообщения: 2925
- Стаж: 21 год 5 месяцев
- Благодарил (а): 79 раз
- Поблагодарили: 69 раз
- Забанен: Бессрочно
Re: Восстановить удаленные сообщения с форума
Очень много сообщений?
Самое простое - выковыривать из бэкапа записи из таблицы _posts и по одной или по нескольку возвращать, делая SQL-запрос в phpMyAdmin
Самое простое - выковыривать из бэкапа записи из таблицы _posts и по одной или по нескольку возвращать, делая SQL-запрос в phpMyAdmin
-
Izya
- Former team member
- Сообщения: 408
- Стаж: 18 лет 2 месяца
- Откуда: Абакан, Сибирь
- Благодарил (а): 1 раз
- Поблагодарили: 28 раз
Re: Восстановить удаленные сообщения с форума
Если вы согласны пожертвовать новыми правками старых сообщений, то процедура очень проста.
1. Определяете, какой максимальный ID у старых сообщений в бэкапе.
2. Удаляете из текущей базы все сообщения с ID равным или меньшим вычисленного в первом пункте (один простой sql-запрос). Этим вы удалите из текущей базы все старые сообщения, чтобы 3-й пункт не вызвал конфликтов.
3. Вставляете в текущую базу все старые сообщения из бэкапа. То есть просто выдираете из файла бэкапа нужный кусок (который будет представлять собой 1 или несколько insert-ов в зависимости от кол-ва сообщений и настроек экспорта при создании бэкапа).
Вот и всё - чай даже не успел остыть.
1. Определяете, какой максимальный ID у старых сообщений в бэкапе.
2. Удаляете из текущей базы все сообщения с ID равным или меньшим вычисленного в первом пункте (один простой sql-запрос). Этим вы удалите из текущей базы все старые сообщения, чтобы 3-й пункт не вызвал конфликтов.
3. Вставляете в текущую базу все старые сообщения из бэкапа. То есть просто выдираете из файла бэкапа нужный кусок (который будет представлять собой 1 или несколько insert-ов в зависимости от кол-ва сообщений и настроек экспорта при создании бэкапа).
Вот и всё - чай даже не успел остыть.
-
Izya
- Former team member
- Сообщения: 408
- Стаж: 18 лет 2 месяца
- Откуда: Абакан, Сибирь
- Благодарил (а): 1 раз
- Поблагодарили: 28 раз
Re: Восстановить удаленные сообщения с форума
zeroed
Если будете использовать описанный мной способ, то неважно, сколько сообщений.
Если будете использовать описанный мной способ, то неважно, сколько сообщений.
-
Izya
- Former team member
- Сообщения: 408
- Стаж: 18 лет 2 месяца
- Откуда: Абакан, Сибирь
- Благодарил (а): 1 раз
- Поблагодарили: 28 раз
Re: Восстановить удаленные сообщения с форума
С чего бы вдруг? 
Они могут потеряться только в одном случае - если из бэкапа кроме Инсертов будет выдернут еще и блок удаления-создания таблицы.
Они могут потеряться только в одном случае - если из бэкапа кроме Инсертов будет выдернут еще и блок удаления-создания таблицы.
-
lutrin
- phpBB 1.2.0
- Сообщения: 11
- Стаж: 16 лет 7 месяцев
- Откуда: Deep
Re: Восстановить удаленные сообщения с форума
Ну судя по алгоритму, и если ID поста автоинкремент (вроде так и заявлено). То потеряются только правки старых сообщений, совершенные с момента бекапа.MAzZY писал(а):Izya, новые сообщения не потеряются?
Так что страшного ничего быть не должно!
-
zeroed
- phpBB 1.4.2
- Сообщения: 70
- Стаж: 17 лет 8 месяцев
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Восстановить удаленные сообщения с форума
Эм... я предположил насчет автоинкремента.
Вам гораздо виднее. Ведь мы про phpbb говорим. Версия конечно же последняя. Точнее предпоследняя, еще не успел обновиться.
Вам гораздо виднее. Ведь мы про phpbb говорим. Версия конечно же последняя. Точнее предпоследняя, еще не успел обновиться.
-
MAzZY
- Бывший член :)
- Сообщения: 2925
- Стаж: 21 год 5 месяцев
- Благодарил (а): 79 раз
- Поблагодарили: 69 раз
- Забанен: Бессрочно
Re: Восстановить удаленные сообщения с форума
Вот здесь может быть проблема, если сообщение написано до удаления других сообщений, но само удалено не было и в бэкапе его не было. Я так понимаю, что были стерты не все подряд сообщения, а выборочно, кусками.Izya писал(а):2. Удаляете из текущей базы все сообщения с ID равным или меньшим вычисленного в первом пункте
-
zeroed
- phpBB 1.4.2
- Сообщения: 70
- Стаж: 17 лет 8 месяцев
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Восстановить удаленные сообщения с форума
Совершенно верно, было стерто очень много сообщений выборочно. Из разных подфорумов и т.д.
После этого было написано достаточно много новых сообщений, терять которые не хочется.
После этого было написано достаточно много новых сообщений, терять которые не хочется.
-
Палыч
- Former team member
- Сообщения: 9683
- Стаж: 20 лет 5 месяцев
- Откуда: Питер
- Благодарил (а): 3 раза
- Поблагодарили: 454 раза
Re: Восстановить удаленные сообщения с форума
Какая?MAzZY писал(а):Вот здесь может быть проблема
Есть бекап с мах_id = 6000, к примеру.
Если поста нет в бекапе, то: 1) либо он был удалён до бекапа, 2) либо post_id > 6000
В первом случае - это не восстановимо, во втором - п.2 его не затрагивает.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
-
Sandro36
- phpBB 1.0.0
- Сообщения: 2
- Стаж: 16 лет 6 месяцев
Вернуть сообщения
Добрый вечер. Не подскажите, возможно ли вернуть все сообщения пользователя, которые "случайно" удалил админ?
Спасибо заранеей
Спасибо заранеей

