Практика работы с Telegram
Ошибки сессии Telegram: database is locked и AuthKeyUnregistered
Как различать занятый файл Telethon, отозванную авторизацию и предупреждение о session ID. Для каждого случая — следующий шаг без удаления единственной копии данных.
Короткий ответ#
database is locked у Telethon обычно означает конфликт доступа к SQLite-файлу сессии; AUTH_KEY_UNREGISTERED относится к незарегистрированному ключу авторизации. Это разные причины сбоя. Удаление файла или смена прокси без диагностики не являются универсальным исправлением.
Какой следующий шаг выбрать по сообщению об ошибке?#
| Наблюдение | Первое действие | Условие продолжения |
|---|---|---|
| database is locked | Найти свои процессы, использующие тот же файл | Один владелец файла или отдельная сессия для каждого клиента |
| AUTH_KEY_UNREGISTERED / SESSION_REVOKED | Сверить аккаунт и историю отзыва авторизации | Восстановленный штатным входом доступ владельца |
| wrong session ID | Проверить повторное использование сессии и соединения | Установлена причина; защита клиента сохранена |
После исправления повторите только нужную разрешённую операцию и запишите результат. Исчезновение сообщения ещё не доказывает, что исходная задача завершилась: проверьте её статус и выходные данные.
Карточка для разбора: версия клиента → время → операция → точный код ошибки → были ли параллельные запуски → что изменили → результат повторной проверки. Не включайте Session, AuthKey, код входа или пароль.
На чём основан разбор#
Редакционная доработка Telecobra: 7 октября 2026 года. Проверены указанные источники и логика примеров. Учебные данные не являются результатами клиентов; новый запуск задач в Telegram не проводился.
- Telethon: конфликт файла сессии — Причины SQLite-блокировки; не утверждение о блокировке аккаунта.
- Telegram: ошибки API — Коды авторизации и ожидания имеют разные значения.
Сначала определите, что именно не работает#
Запишите название клиента, текст ошибки, время и действие перед сбоем. Файл SQLite, авторизация Telegram и сетевое соединение — разные уровни. Один общий совет «сменить прокси» не диагностирует все три.
Минимальная карточка: клиент → путь к файлу без секретов → операция → ошибка → какие процессы используют сессию. Не прикладывайте рабочий файл или ключ к публичному обсуждению.
Telethon: database is locked#
В FAQ Telethon эта ошибка связана с одновременной работой клиентов с одним SQLite-файлом сессии. Проверьте другой процесс, консоль или второй экземпляр скрипта. Для двух клиентов используйте отдельные сессии. Разбор Telethon.
- Найдите, где запускается нужный клиент: рабочий скрипт, консоль, планировщик, сервис.
- Сверьте фактический путь Session у этих запусков. Одинаковые относительные имена могут указывать на одну папку.
- Завершите лишний принадлежащий вам экземпляр штатно. Не останавливайте незнакомые процессы на общем сервере.
- Повторите запуск одного клиента. Если требуется параллельная работа, создайте самостоятельную авторизацию для второго клиента.
Не удаляйте Session как первый шаг: это стирает локальные данные, но не объясняет, какой процесс держал файл.
AUTH_KEY_UNREGISTERED и SESSION_REVOKED#
Эти ответы относятся к авторизации. Первый сообщает, что ключ не зарегистрирован, второй — что сессия отозвана. Увеличение задержки или перестановка столбцов в JSON не восстанавливают авторизацию. Коды приведены в документации ошибок Telegram.
- Убедитесь, что сообщение пришло от нужного клиента и относится к правильному аккаунту.
- Проверьте, не завершалась ли эта сессия владельцем на другом устройстве.
- Если доступ действительно отозван, выполните штатную повторную авторизацию владельца. При отсутствии доступа к номеру сначала решается восстановление доступа.
- После входа повторно проверьте одну разрешённую операцию; остальные задания запускайте после проверки состояния.
Wrong session ID: почему не надо отключать проверку#
Telethon связывает предупреждение о неправильном session ID с защитой от повторного использования сессии. Возможные причины: одна сессия в нескольких местах, особенности прокси или нескольких соединений. Не отключайте проверку безопасности ради исчезновения сообщения. Пояснение разработчиков.
Проверьте историю запуска и сеть, затем воспроизведите сбой одним клиентом. Сообщения про слишком старый или новый ID дополнительно требуют проверки системного времени. Эти предупреждения отличаются от сообщения о блокировке аккаунта.
Где хранится Session и почему она «пропала»#
Telethon по умолчанию создаёт файл имя.session в рабочей папке, если не задан абсолютный путь. Запуск из другой папки может создать другой файл. StringSession — другое представление данных; его нельзя считать обычным путём. Форматы хранения Telethon.
Зафиксируйте путь в своей конфигурации и проверьте его перед переименованием. Для переноса сохраняйте совместимый формат и независимые резервные копии. Переименование расширения не конвертирует сессию другой библиотеки.
Где посмотреть активные сеансы и завершить ненужный#
Active Sessions — список подключений аккаунта. В официальном клиенте откройте Настройки → Устройства; в некоторых версиях раздел находится в настройках конфиденциальности и называется «Активные сеансы». Сверьте приложение, устройство и время активности.
- Выберите конкретный сеанс, который принадлежит вашему старому устройству или больше не нужен.
- Проверьте, что это не подключение, от которого зависит ваша текущая работа. Завершите выбранный сеанс штатной командой клиента.
- Для программы, использовавшей отозванную авторизацию, потребуется новый вход владельца. Удаление локального файла не заменяет завершение доступа на стороне Telegram.
Источники и документация#
Одна платформа · разные задачи
Подписка Telecobra
Соберите инструменты для работы с Telegram в одном кабинете. Сроки доступа, цены и условия — на странице подписки.
В этой инструкции описана только часть возможностей платформы. Полный список доступен в разделе функций.
