Обычное дело, когда откат транзакций выполняется в случае возникновения ошибок или даже если требуется отменить изменения в соответствии с логикой работы приложения.
Например, предположим, что при выполнении операции DELETE с целью удаления соответствующей строки в базе данных удаляется файл моментального снимка. Если выполнить откат данного изменения, удаление строки в базе данных отменяется, но файл по-прежнему будет отсутствовать.
Для всех любителей мотовездеходов, здесь можно http://www.atvarmor.ru/.
Файл npимepa:_Phantom-Files/anti/rollback.php
$stmt = $pdo->query("DELETE FROM Screenshots WHERE bug_id = 1234 AND image_id =1");
unlink("images/screenshot1234-1.jpg");
$pdo->rollback();
В базе данных восстанавливается строка, но не файл изображения.
Файлы не подчиняются инструментам резервного копирования базы данных
В большинстве баз данных клиенту предоставляется программное средство, облегчающее резервное копирование базы данных, находящейся в текущем пользовании. Например, в MySQL предоставляется mysqldmp, в Oracle — rman, в PostgreSQL — pgdump, в SQLite предоставляется команда .dump и т. д. Применение средства резервного копирования важно, так как если другие клиенты вносят изменения параллельно, ваша резервная копия может содержать частичные изменения, потенциально нарушающие целостность на уровне ссылок или даже делающие резервную копию поврежденной или непригодной для восстановления.
Опубликовал vovan666
August 14 2013 15:51:10 ·
0 Комментариев ·
7507 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.