@datareset
развиваюсь.

Теряется соединение с MySql(Python). Что делать?

Итак, в предыдущем вопросе я сделал блок try except в надежде, что оно восстановит мне соединение, но только что я обратился к боту и ошибка вернулась.
mysql.connector.errors.OperationalError: 2055: Lost connection to MySQL server at 'myhost', system error: 32 Broken pipe
Подскажите что мне сделать? Бот залит на хостинг pythonanywhere, фри план, админки нет.
Код:
def query(sql):
    try:
        cursor.execute(sql)
    except mysql.Error as e:
        print(e.msg)
        mysql.connect(
        host = "хост",
        user = "юзер",
        passwd = "пароль",
        database = "бд"
        )
        cursor.execute(sql)
  • Вопрос задан
  • 420 просмотров
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
Итак, в предыдущем вопросе я сделал блок try except в надежде, что оно восстановит мне соединение, но только что я обратился к боту и ошибка вернулась.
Вам в прошлом ответе уже подсказали, что вы не имеете в итоге никакой ссылки на объект подключения, а тупо произвели некоторые действия, ака карго культ. На самом деле вам нужно полностью повторить код подключения в ексепшене, так как cursor у вас все равно остается пустой, а должен содержать ресурс соединения (или объект подключения, не помню как в питоне точно называется).
Ответ написан
@datareset Автор вопроса
развиваюсь.
я дописал класс и на моё удивление все запустилось, насчет потери соединения я пока не знаю, но первая ошибка остаётся. бот не реагирует на команды в группе.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы