中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

innodb_support_xa的作用

發布時間:2020-08-04 23:29:45 來源:ITPUB博客 閱讀:200 作者:chenfeng 欄目:MySQL數據庫
innodb_support_xa可以開關InnoDB的xa兩段式事務提交。

如何開啟?
innodb_support_xa=true,支持xa兩段式事務提交。

默認為true,值為on,多線程并發執行提交事務,按照事務的先后順序寫入binlog,如果關閉則binlog記錄事務的順序可能與實際不符,造成slave不一致

mysql> show global variables like 'innodb_support_xa';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| innodb_support_xa | ON    |
+-------------------+-------+
1 row in set (0.01 sec)


內部XA
現在mysql內部一個處理流程大概是這樣:
1. prepare ,然后將redo log持久化到磁盤
2. 如果前面prepare成功,那么再繼續將事務日志持久化到binlog
3. 如果前面成功,那么在redo log里面寫上一個commit記錄


那么假如在進行著三步時有任何一步失敗,crash recovery是怎么進行的呢?
此時會先從redo log將最近一個檢查點開始的事務讀出來,然后參考binlog里面的事務進行恢復。
如果是在1 crash,那么自然整個事務都回滾;
如果是在2 crash,那么也會整個事務回滾;


如果是在3 crash(僅僅是commit記錄沒寫成功),那么沒有關系因為2中已經記錄了此次事務的binlog,所以將這個進行commit。所以總結起來就是redo log里凡是prepare成功,但commit失敗的事務都會先去binlog查找判斷其是否存在(通過XID進行判斷,是不是經常在binlog里面看到Xid=xxxx?這就是xa事務id),如果有則將這個事務commit,否則rollback。


向AI問一下細節
推薦閱讀:
  1. uboot的作用
  2. key的作用

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

城步| 永兴县| 湾仔区| 兴山县| 甘肃省| 新晃| 亚东县| 宣威市| 新绛县| 寿宁县| 宁波市| 瑞金市| 长阳| 奉新县| 大庆市| 永德县| 安化县| 本溪市| 泾阳县| 张家港市| 康马县| 苏尼特左旗| 库尔勒市| 郴州市| 平顶山市| 山阳县| 溧水县| 新蔡县| 南澳县| 镇康县| 清远市| 江陵县| 治县。| 赤壁市| 崇义县| 土默特右旗| 筠连县| 重庆市| 六盘水市| 镇安县| 永泰县|