Журнал транзакций DDL

Как механизмы хранения, такие как InnoDB, достигают ACID для оператора DDL. В операторе DDL, таком как CREATE TABLE ..., должны быть созданы некоторые промежуточные файлы / каталоги, и если какая-либо операция неожиданно завершится неудачно, эти файлы необходимо очистить. Таким образом, механизм хранения должен запомнить, какие файлы / каталоги они создали и очистить (хотя процесс очистки также может завершиться неудачно ...). Я предполагаю, что они используют для этого ведение журнала (Write Ahead Logging). Но может ли кто-нибудь предоставить для этого простой автономный протокол?

Они этого не делают. «Некоторые операторы нельзя откатить. Как правило, к ним относятся операторы языка определения данных (DDL), например, те, которые создают или удаляют базы данных, те, которые создают, удаляют или изменяют таблицы или хранимые процедуры». Источник Однако другие СУБД поддерживают DDL в транзакциях.

Mike Sherrill 'Cat Recall' 03.11.2018 23:24

До MySQL 8.0 по существу не было ACID для операторов DDL. «Словарь данных» 8.0 это радикально меняет.

Rick James 04.11.2018 03:20
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
2
111
0

Другие вопросы по теме