бд которая может изменяться в рантайме через админ-панель, куда имеет доступ владелец и админы. И нужно защитится от проблем, когда случайно удаляются не те данные из базы.
Я придумал делать бекапы базы и кидать их в отдельный топик в группе телеги, чтобы можно было в любой момент откатиться.
Как вы делаете бекап базы данных по таймеру? Вплане у меня ивент луп с тг ботом, который ловит запросики. Делать мультитредом ещё один процесс с бекапом базы?
Насколько я помню, мможет возникнуть ошибка, при которой я буду читать файл во время записи в него данных. А делать всё однопотоком - будет проблема с задержкой на время чтения, и бот не будет отвечать.
В общем, я ни разу не видел как это реализовывают и понятия не имею как это работает. Хелп ми плиз
Если кинете статью или лучше пример исходников - буду очень благодарен
делать бэкап перед каждым "DELETE ..."🤓
Бля. Может "техническую паузу" на это время просто делать...
база легковестная, один текст небольшой да файл айдишники. Даже если большая будет - максимум минуты три
Как копировать БД зависит от того как эта БД устроена
Можно триггер поставить на BEFORE DELETE или я что-то не так понял. Чтобы другие транзакции не влияли можно поставить лок или синхронизировать сами корутины/потоки. А чего бы вообще не добавить флаг в схему. По дефолту true, если надо удалить запись ставишь false
у меня делит происходит каждые минут 5. Бекапать всю базу перед каждой транзакцией - бред
>бд которая может изменяться в рантайме через админ-панель, куда имеет доступ владелец и админы. Это изначально хуёвый подход. Сделай нормальную админку
Ну если там кнопка добавить/удалить юзера, то что не так
Я так понял у него прямой доступ к базе из админки
типа запросы писать что ли
Мне кажется у него просто какой-то pgadmin)
Э, смысле? Админы имеют доступ изменять бд. Владелец имеет доступ удалить или добавить админов, а так же доступ к бд Доступ к бд через отдельные методы, там нет возможности прописать голый скуль. Аля "нажми на кнопочку чтобы изменить Х в базе данных"
Если так, то почему что-то должно сломаться от этих действий?
Нет. Прослойка из функций, напрямую скуль запрос написать админы не могут
Потому что админ может удалить нахуй всю базу, а бекапов нет защита от долбоеба же, писал выше
>бэкапов нет Так сделай
Каким образом админ вообще может удалить базу через админку? Нахуя в админке такая функциональность?
У меня бд с курсами и уроками. Админы могут редактировать данные курса, добавлять уроки и изменять их содержание.
Дамп по времени такое себе, новые записи будут теряться же. Можно планировщиком задать команду по расписанию. Посмотри cron если используешь линукс
На ней должен быть тоже планировщик. Также скрипт пишешь и будет запускать по заданному расписанию
Всем большое спасибо
Кажется здесь какое-то противоречие
Я имел в виду, что в целом дамп данных по расписанию не будет учитывать новые данные, которые внесены после дампа и будут теряться при откате. Но это можно сделать планировщиком, если так хочется
Обсуждают сегодня