Форум программистов, компьютерный форум, киберфорум
Python: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 1

Как исправить ошибку MySQL server has gone away совместно с peewee?

16.03.2019, 20:08. Показов 1636. Ответов 1

Студворк — интернет-сервис помощи студентам
Здравствуйте
Разрабатываю бота для telegram на python. Для работы с MySql использую ORM - peewee.
После запуска, все работает как часы без ошибок, но спустя какое время появляются ошибка и работа с БД отваливается.
Понимаю, что сначала peewee соединяется с БД какое-то время работает и MySql рубит соединение из-за длительности, потому что peewee не отсоединяется.
Инициализация базы
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
user = 'root'
password = ''
db_name = 'bus_stop'
 
dbhandle = MySQLDatabase(
db_name, user=user,
password=password,
host='localhost'
 
class BaseModel(Model):
    class Meta:
        database = dbhandle
)
Нашел пример использования подписки cherrypy:
Python
1
2
3
4
5
6
7
8
9
def _db_connect():
    dbhandle.connect()
 
def _db_close():
    if not dbhandle.is_closed():
        dbhandle.close()
 
cherrypy.engine.subscribe('before_request', _db_connect)
cherrypy.engine.subscribe('after_request', _db_close)
Но все равно не работает (правда не уверен, что я вставляю именно туда. Вставил кусок кода после инициализации базы)
Проверил, что соединение остается так:
Python
1
2
3
4
5
6
7
8
print(BaseModel._meta.database.is_closed())
user, created = User.get_or_create(telegram_id=t_user.id)
user.first_name = t_user.first_name
user.last_name = t_user.last_name
user.username = t_user.username
print(BaseModel._meta.database.is_closed())
user.save()
print(BaseModel._meta.database.is_closed())
После нескольких раз всегда пишет False

Как можно решить эту проблему, чтобы peewee спокойно работал с бд?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.03.2019, 20:08
Ответы с готовыми решениями:

Как исправить ошибку Internal Server Error?
Добрый день! Пытаюсь API запросом вытащить таблицу из postgresql на html страничку. Делаю это впервые. При запуске приложения python...

Как исправить ошибку Android Studio «No server to serve request»?
Система: Xubuntu 18.04 32-bit. В логах ничего нету. Просто на этапе Make Project "Run Tasks" появляется эта ошибка. Я уже не знаю как её...

Как исправить Error Code: 2013. Lost connection to MySQL server during query
Здравствуйте. Есть запрос по импорту большого файла в базу данных формата LOAD DATA INFILE 'файл.csv' INTO TABLE pma.nsn3g ...

1
19 / 14 / 6
Регистрация: 21.01.2020
Сообщений: 49
19.03.2021, 14:11
Привет. Не нашёл решение проблемы?)) Бьюсь над ней уже не первый месяц. Есть обходные пути, но они дают задержку в работе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.03.2021, 14:11
Помогаю со студенческими работами здесь

Как исправить ошибку Failed to load resource: the server responded with a status of 404 ()?
Добрый день, люди добрые. Подскажите, как исправить ошибку Failed to load resource: the server responded with a status of 404 () ...

Как исправить ошибку при импорте базы данных MySQL (Cannot add foreign key constraint)?
При импорте базы данных из бэкапа возникает ошибка: Подскажите, пожалуйста, как её исправить? И что нужно исправить в БД, чтобы она не...

Как исправить ошибку (0x84bb0001: система не может найти указанный файл) при установке SQL Server 2016 или 2017
Я удалил SQL Server 2014 с компьютера, а затем удалил папку "C:\Program Files\Microsoft SQL Server". После этого я попытался установить...

Вставка в таблицу MySQL используя peewee вызывает исключение “unknown column”
Доброго времени суток, подскажите с проблемкой У меня есть следующий скрипт: from peewee import * db =...

Исправить ошибку MySQL
Здравствуйте. SELECT * FROM(SELECT DISTINCT(`user_one`), `subject`, `user_two`, `date`, `read_check`, `message` FROM `message` WHERE...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru