1. 程式人生 > >mysql之 myloader原理介紹

mysql之 myloader原理介紹

myloader恢復主要流程

 

1、首先由myloader主執行緒完成建庫建表,依次將備份目錄下建庫和建表文件執行應用到目標資料庫例項中;

 

2、接著myloader主執行緒會生成多個工作執行緒,由這些工作執行緒將所有database.table.*.sql檔案中的記錄匯入到對應表中,這個階段是並行的,並行粒度為檔案,工作執行緒完成所有database.table.*.sql 檔案資料匯入後銷燬;

 

3、最後主執行緒將建立函式、儲存程序、事件,以及建立表檢視、觸發器的檔案執行匯入對應資料庫和表中。

 

myloader引數詳解

 

複製程式碼

myloader --help
Usage:
  myloader [OPTION...] multi-threaded MySQL loader
 
Help Options:
  -?, --help                        Show help options
 
Application Options:
  -d, --directory                   Directory of the dump to import之前備份好的現在需要匯入的資料夾
  -q, --queries-per-transaction     Number of queries per transaction, default 1000每次事物執行的查詢數量,預設是1000
  -o, --overwrite-tables            Drop tables if they already exist如果要恢復的表存在,則先drop掉該表,使用該引數,需要備份時候要備份表結構
  -B, --database                    An alternative database to restore into還原到指定的資料庫
  -s, --source-db                   Database to restore選擇被還原的資料庫,將這個資料庫資料還原到--database指定的資料庫裡
  -e, --enable-binlog               Enable binary logging of the restore data啟用還原資料的二進位制日誌
  -h, --host                        連線的主機名
  -u, --user                        用來備份的使用者名稱
  -p, --password                    使用者密碼
  -P, --port                        連線埠
  -S, --socket                      使用socket通訊時的socket檔案
  -t, --threads                     開啟的備份執行緒數,預設是4
  -C, --compress-protocol           壓縮與mysql通訊的資料
  -V, --version                     顯示版本號
  -v, --verbose                     輸出資訊模式, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 預設為2

複製程式碼

 

myloader恢復流程圖