egg 學習 mysql 回滾操作

2021-08-26 17:53:59 字數 694 閱讀 6591

egg框架搭建,以及egg-mysql包的引入,繁瑣的操作跟著官方文件走就好了

try catch (err)

這裡有個bug,雖然從官方複製來**,但執行時候,不論是否有commit或者rollback,事務操作都會執行,就好像他娘的這一坨**不存在一樣,這是因為mysql預設的儲存引擎是myisam,myisam儲存引擎不支援事務處理,需要把引擎修改為innodb

順便提一嘴,innodb引擎支援回滾操作,所以效能上會有一點消耗,儲存,讀取速度不如myisam

更改引擎方式如下:

sql語句:show engines  //檢視當前資料庫支援的引擎

sql語句:show table status from 『資料庫名』 where name='表名';   //檢視表使用的儲存引擎

sql語句:alter table table_name engine=innodb;   // 修改表的儲存引擎

引擎修改後,如果還是不支援回滾,可以檢視下autocommit 是不是開啟了,

sql語句:show variables like 'autocommit'  //  檢視是否開啟啟動提交

sql語句:setautocommit = 0 // 關閉自動提交

僅供參考,一般egg-mysql開啟事務的時候,自動提交會被關閉

mysql回滾命令 關於MySQL回滾機制

在事務中,每個正確的原子操作都會被順序執行,直到遇到錯誤的原子操作,此時事務會將之前的操作進行回滾。回滾的意思是如果之前是插入操作,那麼會執行刪 除插入的記錄,如果之前是update操作,也會執行update操作將之前的記錄還原 因此,正確的原子操作是真正被執行過的。是物理執行。在當前事務中確實能看...

Git 回滾操作

git revert是用一次新的commit來回滾之前的commit,git reset是直接刪除指定的commit git log 查詢回滾版本唯一commit標識 git reset hard head 3 會將最新的3次提交全部重置,就像沒有提交過一樣。mixed git reset 會保留原...

Ambari NameNode HA 回滾操作

目錄 一 問題引出 1.角色檢視 二 解決步驟 1.清理額外的namenode 2.恢復secondary namenode 3.namenodeha 啟動 啟用hdfs ha過程中,被人為的中斷或意外的中斷導致secondary namenone還沒有被刪除。我是 namenode 啟動花了 15...