Parts 0 04/12/2013 03:52 AM Как админ может восстановить тему с известным IDесли один из модераторов ее снес? Share this post Link to post Share on other sites
Атаман 457 04/12/2013 04:18 AM 1) (Средствами форума) Если У Вас нету корзины на фоурме и тд, то не как. 2) (Вручную) Если есть бекап БД за определенное число: выдернуть с бекапа тему, и посты с нее. Share this post Link to post Share on other sites
Parts 0 04/16/2013 02:53 PM да, корзины на тот момент не было. А в бэкапе как ее правильно найти и восстановить? Share this post Link to post Share on other sites
siv1987 2,623 04/16/2013 05:03 PM А в бэкапе как ее правильно найти и восстановить?Для вас самый простой вариант, это создать еще одну базу данных под mysql пользователя где находиться база форума. Базу назовем backupforum. Импортировать туда бэкап (смотрите не ошибитесь, и не импортируйте случайно бэкап в рабочую базу). Потом выполнить следующие запросы для копирования темы и постов из бэкапа в рабочую базу: INSERT INTO forum.ibf_topics SELECT * FROM backupforum.ibf_topics WHERE tid=ид_удаленной_темы INSERT INTO forum.ibf_posts SELECT * FROM backupforum.ibf_posts WHERE topic_id=ид_удаленной_темы forum - заменить на название базы где находиться форумbackupforum - название базы где находится бэкап. После пройти в Админцентр > НАСТРОЙКИ > Пересчет и обновлениеВыполнить Ресинхронизация форумов. Share this post Link to post Share on other sites
siv1987 2,623 04/16/2013 07:37 PM Вариант для более продвинутых пользователей. Если бэкап весит несколько сотен мегабайт или пару гигабайт, закачивать и развертывать его на сервере не очень удобно. Его можно развернуть на локалхосте, а сбэкапить нужные строки из бд нам поможет утилита mysqldump, которая позволяет добавлять условия в выборке. 1. Переходим через cmd в папку где находится mysqldump.exe 2. Бэкапим сперва таблицу тем mysqldump -uЮзер -pПароль --default-character-set=cp1251 имя_базы ibf_topics --no-create-info --where="tid=ид_темы" > backup.sql 3. Добавляем к бэкапу сообщения темы mysqldump -uЮзер -pПароль --default-character-set=cp1251 имя_базы ibf_posts --no-create-info --where="topic_id=ид_темы" >> backup.sql Дальше уже можно импортировать полученный бэкап на сервере любым удобным нам способом - либо через phpmyadmin, либо используя ssh. Share this post Link to post Share on other sites
siv1987 2,623 04/17/2013 11:30 AM Раз пошла такая пьянка, расскажу про еще один способ, как можно восстановить удаленную тему из бэкапа с помощью phpMyAdmin. 1. И так, заходим через phpMyAdmin в базу где находиться наш бэкап, и переходим на кладку SQL. 2. Делаем запрос для селекта нужный темыSELECT * FROM ibf_topics WHERE tid=ид_топикаи нажимаем внизу на "Экспорт" 3. В настройках дампа снимаем галочку с опции Структура. Все остальные настройки можно оставить по умолчанию.Ставим галочку на "Послать" для того чтобы получить бэкап в виде файла, и нажимаем Пошел. Теперь у нас есть бэкап удаленной темы. Осталось сдампить сообщения аналогичным способом. 4. Переходим обратно на вкладку SQL. Выполняем запрос для выбора сообщений из таблицы ibf_postsSELECT * FROM ibf_posts WHERE topic_id=ид_топикаДалее, как в случае с темой, нажимаем экспорт, снимаем галочку с "Структура", ставим на "Послать" и делаем бэкап. Share this post Link to post Share on other sites