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

溫馨提示×

溫馨提示×

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

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

MySQL Online DDL的實現細節介紹

發布時間:2020-08-11 17:47:17 來源:ITPUB博客 閱讀:201 作者:chenfeng 欄目:MySQL數據庫
 MySQL Online DDL的實現細節共分為三個階段:
Prepare階段
1.創建臨時frm文件
2.持有EXCLUSIVE-MDL鎖,禁止讀寫
3.根據ALTER類型,確定執行方式(copy,online-rebuild,online-norebuild)
4.更新數據字典的內存對象
5.分配row_log對象記錄增量
6.生成臨時ibd文件

ddl執行階段
1.降級EXCLUSIVE-MDL鎖,允許讀寫
2.掃描原表的聚簇索引每條記錄
3.遍歷新表的聚簇索引和二級索引,逐一處理
4.根據記錄構造對應的索引項
5.將構造索引項插入sort_buffer塊
6.將sort_buffer塊插入新的索引
7.處理ddl執行過程中產生的增量(僅rebuild類型需要)

commit階段
1.升級到EXCLUSIVE-MDL鎖,禁止讀寫
2.應用最后row_log中產的日志
3.更新innodb的數據字典表
4.提交事務(刷事務的redo日志)
5.修改統計信息
6.rename臨時idb文件,frm文件
7.變更完成
向AI問一下細節

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

AI

浏阳市| 马关县| 沿河| 新野县| 徐水县| 漳平市| 罗源县| 湖口县| 新宾| 大冶市| 繁峙县| 云龙县| 长阳| 襄汾县| 郸城县| 于田县| 雷州市| 秀山| 江都市| 泌阳县| 余干县| 若羌县| 冀州市| 望奎县| 固安县| 陈巴尔虎旗| 封丘县| 石狮市| 探索| 新竹市| 黔西县| 长寿区| 龙川县| 平阳县| 萨迦县| 社旗县| 鄂托克旗| 霍城县| 武陟县| 巧家县| 丽水市|