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