Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Transaktionaler DDL-Workflow für MySQL

DDL-Anweisungen führen zu einem impliziten Commit, und Sie können nichts dagegen tun. Es gibt keine Möglichkeit, dieses Verhalten zu stoppen.

Bei welchen DDL-Anweisungen dieses Verhalten sich im Laufe der Zeit ändert, müssen Sie nach Ihrer Version suchen.

5.1 http://dev.mysql.com/doc/refman/5.1/en/implicit-commit.html
5.5 http://dev.mysql.com/doc/refman/5.5/en/implicit-commit.html
5.6 http://dev.mysql.com/doc/refman/5.6/en/implicit-commit.html

Wenn wir nur das Schema erweitern, neue Tabellen/Spalten/Ansichten/Prozesse/usw., die sich nicht auf den vorhandenen Code auswirken, dann ist die Automatisierung in Ordnung, suchen Sie einfach nach Fehlern und beheben Sie sie.

Wenn sie sich auf bestehenden Code auswirken, müssen Sie von Fall zu Fall eine Strategie entwickeln. Da es kein Rollback gibt, benötigen Sie einen eigenen Backout-Plan und müssen ihn gründlich testen.

Da es sich um einen Einzelfall handelt, kann ich Ihnen in Ihrer speziellen Situation nicht viel Hilfe anbieten.