Подписаться
Опубликовано

PostgreSQL из бэкапа без restore: FUSE + fdw

Автор
  • Имя
    Новости нашего ИТ
    Telegram

Как запускать PostgreSQL прямо из бэкапа без restore: FUSE и точечный флэшбэк через postgres_fdw #docker Несколько лет назад я трудился в проекте, где основной биллинг работал на Oracle. Однажды коллега захотел поправить тестовые начисления в таблице abon_charges и выполнил такой запрос: UPDATE abon_charges SET amount = 0 WHERE service_id = 123 AND v_abon_id = v_abon_id; На первый взгляд — ничего страшного. Но v_abon_id = v_abon_id истинно для любой строки. Oracle это не игнорирует. Условие становится: WHERE service_id = 123 AND TRUE Так запрос обнулил абсолютно все суммы для service_id=123 за десятки месяцев. В таблице было около 1,8 млн строк по этой услуге. С такой неприятностью в Oracle может помочь механизм Oracle Flashback. Вкратце: находим проблемную транзакцию, в отдельной сессии включаем чтение таблицы на момент до обновления, снимаем копию в отдельную таблицу и отдаём её нашему вино

link

Новости нашего ИТ
14 подписчиков
5145 постов
Данный канал является агрегатором технических статей нашего любимого ИТ, так что кто устал листать тысячи сайтов в поиске технических статей присоеденяйтесь к каналу и наслаждайтесь #it_news

Из подборки #databases

Свежие посты