Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Parts

Восстановление темы зная ее ID

Рекомендованные сообщения

Как админ может восстановить тему с известным ID

если один из модераторов ее снес?

Поделиться сообщением


Ссылка на сообщение

1) (Средствами форума) Если У Вас нету корзины на фоурме и тд, то не как.

 

2) (Вручную) Если есть бекап БД за определенное число: выдернуть с бекапа тему, и посты с нее.

Поделиться сообщением


Ссылка на сообщение

да, корзины на тот момент не было.

 

 

А в бэкапе как ее правильно найти и восстановить?

Поделиться сообщением


Ссылка на сообщение

А в бэкапе как ее правильно найти и восстановить?

Для вас самый простой вариант, это создать еще одну базу данных под 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 - название базы где находится бэкап.

 

После пройти в Админцентр > НАСТРОЙКИ > Пересчет и обновление

Выполнить Ресинхронизация форумов.

Поделиться сообщением


Ссылка на сообщение

Вариант для более продвинутых пользователей.

 

Если бэкап весит несколько сотен мегабайт или пару гигабайт, закачивать и развертывать его на сервере не очень удобно. Его можно развернуть на локалхосте, а сбэкапить нужные строки из бд нам поможет утилита 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.

Поделиться сообщением


Ссылка на сообщение

Раз пошла такая пьянка, расскажу про еще один способ, как можно восстановить удаленную тему из бэкапа с помощью phpMyAdmin.

 

1. И так, заходим через phpMyAdmin в базу где находиться наш бэкап, и переходим на кладку SQL.

 

2f1c03807d15t.jpg

 

2. Делаем запрос для селекта нужный темы

SELECT * FROM ibf_topics WHERE tid=ид_топика

и нажимаем внизу на "Экспорт"

 

6f629e29a76et.jpg

 

3. В настройках дампа снимаем галочку с опции Структура. Все остальные настройки можно оставить по умолчанию.

Ставим галочку на "Послать" для того чтобы получить бэкап в виде файла, и нажимаем Пошел.

 

560979b153fat.jpg

 

Теперь у нас есть бэкап удаленной темы. Осталось сдампить сообщения аналогичным способом.

 

4. Переходим обратно на вкладку SQL. Выполняем запрос для выбора сообщений из таблицы ibf_posts

SELECT * FROM ibf_posts WHERE topic_id=ид_топика

Далее, как в случае с темой, нажимаем экспорт, снимаем галочку с "Структура", ставим на "Послать" и делаем бэкап.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...