- MySQL 8從零開始學(視頻教學版)
- 胡同夫
- 327字
- 2020-03-06 11:33:31
4.5 MySQL 8.0的新特性——DDL的原子化
在MySQL 8.0版本中,InnoDB表的DDL支持事務完整性,即DDL操作要么成功,要么回滾。DDL操作回滾日志寫入data dictionary數據字典表mysql.innodb_ddl_log中用于回滾操作,該表是隱藏的表,通過show tables無法看到。通過設置參數可將DDL操作日志打印輸出到MySQL錯誤日志中。
下面通過案例來對比不同的版本中DDL操作的區別。
分別在MySQL 5.7版本和MySQL 8.0版本中創建數據庫和數據表,結果如下:

在MySQL 5.7版本中,測試步驟如下:
刪除數據表bk1和數據表bk2,結果如下:

再次查詢數據庫中數據表的名稱,結果如下:

從結果可以看出,雖然執行刪除操作時報錯了,但是仍然刪除了數據表bk1。
在MySQL 8.0版本中,測試步驟如下:
(1)刪除數據表bk1和數據表bk2,結果如下:

(2)再次查詢數據庫中數據表的名稱,結果如下:

(3)從結果可以看出,數據表bk1并沒有被刪除。
推薦閱讀
- JavaScript百煉成仙
- 基于粒計算模型的圖像處理
- PyTorch自動駕駛視覺感知算法實戰
- 網頁設計與制作教程(HTML+CSS+JavaScript)(第2版)
- SQL Server 2016數據庫應用與開發習題解答與上機指導
- FLL+WRO樂高機器人競賽教程:機械、巡線與PID
- Serverless架構
- INSTANT Passbook App Development for iOS How-to
- Hands-On Natural Language Processing with Python
- 深入理解Android:Wi-Fi、NFC和GPS卷
- Hands-On Neural Network Programming with C#
- Programming Microsoft Dynamics? NAV 2015
- Java Web應用開發項目教程
- SAP Web Dynpro for ABAP開發技術詳解:基礎應用
- Software Architecture with Python