Иногда у клиентов возникает необходимость очистить историю чатов на портале.
Чаты относятся к модулю сообщений im и хранятся в базе данных в таблицах с префиксом b_im_.
В этих таблицах содержатся:
сами сообщения,
данные по групповым чатам,
счетчики сообщений и отметки о непрочитанных,
оформление системных сообщений,
связи с открытыми линиями и др.
Для очистки истории сообщений достаточно удалить данные из таблицы b_im_message.
Шаг 1. Создаем резервную копию таблицы
Перед любыми действиями обязательно делаем бэкап: CREATE TABLE b_im_message_backup AS SELECT * FROM b_im_message;
Шаг 2. Очистка истории
Полная очистка таблицы: TRUNCATE TABLE b_im_message; Очистка по условию, например — только для конкретного чата: DELETE FROM b_im_message WHERE CHAT_ID = [ID_чата];
Примечания
Время очистки зависит от объема данных, обычно занимает не более минуты.
После операции могут остаться артефакты, например, некорректные счетчики непрочитанных сообщений, но на общую работоспособность портала это не влияет.
Рекомендуется заранее протестировать процесс на тестовом стенде или на копии таблицы.
Важно: Выполнять подобные операции стоит только при наличии прав администратора и с пониманием последствий.