91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

邏輯備份mysqldump和物理備份xtrabackup的流程

發布時間:2020-07-18 20:48:41 來源:網絡 閱讀:1216 作者:wdw王大為 欄目:MySQL數據庫

mysqldump備份原理

備份的基本流程如下:

  1. FLUSH TABLES

    功能:關閉實例上所有打開表
    目的:為第二步prepare,為了避免較長的事務操作造成FLUSH TABLES WITH READ LOCK操作遲遲得不到鎖,但同時又阻塞了其它客戶端操作
  2. FLUSH TABLES WITH READ LOCK

    功能:加全局讀鎖
    目的:獲得DB一致性狀態
  3. SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ

    功能:設置當前會話的事務隔離等級為RR,RR可避免不可重復讀和幻讀
    目的:確保在備份事務中任何時刻數據都相同
  4. START TRANSACTION WITH CONSISTENT SNAPSHOT

    功能:獲取當前數據庫的快照,這個是由mysqldump中--single-transaction決定的
    目的: 簡而言之,就是開啟事務并對所有表執行了一次SELECT操作,這樣可保證備份時,在任意時間點執行select * from table得到的數據和執行START TRANSACTION WITH CONSISTENT SNAPSHOT時的數據一致
  5. obtain Log position

    功能:獲取binlog的相關信息,這個是由--master-data決定的
    目的:記錄了開始備份時,binlog的狀態信息,包括MASTER_LOG_FILE和MASTER_LOG_POS
  6. 備份非innodb表數據(.frm,.myi,.myd等)
     
  7. unlock tables(非innodb表備份完畢)
     
  8. 備份innodb表數據
     
  9. 備份完成
     

xtrabackup備份原理

innobackupex的本質:innobackupex 腳本用來備份非 InnoDB 表,同時會調用 xtrabackup 命令來備份 InnoDB 表

邏輯備份mysqldump和物理備份xtrabackup的流程

備份的基本流程如下:

  1. innobackupex 在啟動后,會先 fork 一個進程,啟動 xtrabackup進程,然后就等待 xtrabackup 備份完 ibd 數據文件
    ?
  2. xtrabackup 在備份 InnoDB 相關數據時,是有2種線程的,1種是 redo 拷貝線程,負責拷貝 redo 文件,1種是 ibd 拷貝線程,負責拷貝 ibd 文件;redo 拷貝線程只有一個,在 ibd 拷貝線程之前啟動,在 ibd 線程結束后結束。xtrabackup 進程開始執行后,先啟動 redo 拷貝線程,從最新的 checkpoint 點開始順序拷貝 redo 日志;然后再啟動 ibd 數據拷貝線程,在 xtrabackup 拷貝 ibd 過程中,innobackupex 進程一直處于等待狀態(等待文件被創建)
    ?
  3. xtrabackup 拷貝完成idb后,通知 innobackupex(通過創建文件),同時自己進入等待(redo 線程仍然繼續拷貝)
    ?
  4. innobackupex 收到 xtrabackup 通知后,執行FLUSH TABLES WITH READ LOCK (FTWRL),取得一致性位點,然后開始備份非 InnoDB 文件(包括 frm、MYD、MYI、CSV、opt、par等)。拷貝非 InnoDB 文件過程中,因為數據庫處于全局只讀狀態,如果在業務的主庫備份的話,要特別小心,非 InnoDB 表(主要是MyISAM)比較多的話整庫只讀時間就會比較長,這個影響一定要評估到
    ?
  5. 當 innobackupex 拷貝完所有非 InnoDB 表文件后,通知 xtrabackup(通過刪文件) ,同時自己進入等待(等待另一個文件被創建)
    ?
  6. xtrabackup 收到 innobackupex 備份完非 InnoDB 通知后,就停止 redo 拷貝線程,然后通知 innobackupex redo log 拷貝完成(通過創建文件)
    ?
  7. innobackupex 收到 redo 備份完成通知后,就開始解鎖,執行 UNLOCK TABLES
    ?
  8. 最后 innobackupex 和 xtrabackup 進程各自完成收尾工作,如資源的釋放、寫備份元數據信息等,innobackupex 等待 xtrabackup 子進程結束后退出
    ?
向AI問一下細節

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

AI

天等县| 阳谷县| 蒙城县| 武强县| 黄梅县| 韶山市| 宜春市| 江山市| 临安市| 定远县| 瓦房店市| 娄底市| 望谟县| 喜德县| 四川省| 云阳县| 神农架林区| 澳门| 湾仔区| 邵阳县| 甘肃省| 哈密市| 沂源县| 尼勒克县| 湘潭县| 嘉义市| 巴林右旗| 成都市| 咸阳市| 沽源县| 梁平县| 兴化市| 皮山县| 南投县| 阿瓦提县| 佛学| 兴安盟| 明星| 盐池县| 江川县| 四川省|