Проблема: После обновления мессенджера (Telegram, WhatsApp, Viber) или соцсети (VK, OK) исчезла история переписки. Визуально чаты пусты, сообщения не загружаются.

Причины:
1. Сброс локальной БД: Обновление перезаписывает структуру базы данных (SQLite). Старая БД блокируется, новая создается пустой.
2. Смена ключа шифрования: В end-to-end мессенджерах (Signal, Telegram Secret Chat) при обновлении алгоритма шифрования старые локальные ключи становятся невалидными, сообщения не дешифруются.
3. Миграция ошибок: Сбой при конвертации схемы БД из старой версии в новую (несовместимость типов данных, нарушение индексов).
4. Синхронизация облака: При входе после обновления клиент по ошибке перезаписывает облачную историю пустой локальной копией.

Решение:

1. Восстановление сообщений из резервной копии (до обновления)
iOS (iTunes/Finder): Отключи автоматическую синхронизацию. Подключи устройство к ПК. `Finder` → устройство → «Восстановить из резервной копии». Выбирай бекап, созданный до даты обновления приложения.
Важно: Сообщения из iCloud не перезаписываются, если они не были загружены обратно на устройство.
Android (Google Drive локально): Удали приложение, установи версию до обновления (APK Mirror). Открой приложение, выбери «Восстановить из резервной копии Google Drive».
Если такого варианта нет: `adb backup -f backup.ab -noapk` (если ранее делал бекап) — восстановить через `dd if=backup.ab | openssl zlib -d > backup.tar`.
Windows/Mac: Полный дамп папки `%AppData%\Local\[Appname]\` или `~/Library/Application Support/[Appname]/`. Замени папку на сохраненную копию.

2. Извлечение данных из старой базы (если резервной копии нет)
Локализация файлов:
Android (root): `/data/data/[пакет приложения]/databases/` — файлы `.db`, `.wal`, `.shm`.
iOS (без jailbreak): только через полный дамп файловой системы (iMazing, EaseUS MobiSaver — извлечение из iTunes-бекапа).
Desktop: `%AppData%/Telegram Desktop/tdata/` — папки `user_data`, `dumps`.
Извлечение:
Для Android: `adb shell "cp -r /data/data/org.telegram.messenger/databases/ /sdcard/backup_db/"`, затем `adb pull /sdcard/backup_db/`.
Анализ: `sqlite3 databases.db .dump` — поиск таблиц `messages`, `chat_history`, `conversation`.
Восстановление (пример для Telegram на ПК): Найди файл `user_data` и замени его в папке `%AppData%/Telegram Desktop/tdata/` после закрытия приложения. Запусти заново — история будет пересканирована.

3. Восстановление сообщений через файлы кэша/медиа
WhatsApp: Файлы `.db.crypt12` (зашифрованные). Дешифровка — только с ключом из `msgstore.db.crypt12.key` (находится в `misc/`). Если ключ устарел — увы.
Telegram (облачные чаты): Приложение автоматически загрузит историю с сервера после восстановления доступа к файлу `key_datas` (в `tdata`). Не удаляй папку `tdata`.

Команды (Windows, при закрытом приложении):
1. Переход в папку: `cd %AppData%\Telegram Desktop\tdata\user_data`
2. Замена: `xcopy /E /Y "D:\backup\user_data" "C:\Users\%USERNAME%\AppData\Roaming\Telegram Desktop\tdata\user_data"`
3. Удаление кэша: `del /F /Q "C:\Users\%USERNAME%\AppData\Roaming\Telegram Desktop\tdata\cache"`

Легальность: Действия проводятся только с собственных устройств и файлов пользователя. Извлечение данных третьих лиц (не ваших) — нарушение ст. 272 УК РФ (Неправомерный доступ к компьютерной информации). Убедись, что бекап создан заранее — без него шансы < 15% при смене ключа шифрования.