使用技巧(需要人為配合)
如果(guo)您使用(yong)的是全(quan)量遷(qian)(qian)移(yi)模式(離線遷(qian)(qian)移(yi)),確保源和目標數據庫無業務寫入(ru),保證遷(qian)(qian)移(yi)前后數據一致。
如果您使用的是全量+增量遷移模式(在線遷移),支持在源(yuan)數據庫有業務數據寫入的情況下(xia)進行遷移,推薦提前2-3天(tian)啟動任務,并配合如下(xia)使用技(ji)巧和對應場景的操(cao)作要求,以確(que)保順(shun)利(li)遷移。
基于以下原因(yin),建(jian)議您結合定時啟動功(gong)能,選(xuan)(xuan)擇(ze)業務(wu)低峰(feng)期開始運行遷(qian)(qian)(qian)移(yi)(yi)任務(wu),相對靜態的數據(ju),遷(qian)(qian)(qian)移(yi)(yi)時復雜度(du)將會降低。如果(guo)遷(qian)(qian)(qian)移(yi)(yi)不可避免業務(wu)高峰(feng)期,推(tui)薦使用(yong)遷(qian)(qian)(qian)移(yi)(yi)限(xian)速(su)功(gong)能,即“流速(su)模式”選(xuan)(xuan)擇(ze)“限(xian)速(su)”。
全量遷(qian)移(yi)會對源數(shu)據庫有一定(ding)的訪問(wen)壓力。
遷(qian)移無主鍵表時,為了確保數據一致(zhi)性,會(hui)存(cun)在(zai)3s以(yi)內的單表級鎖(suo)定。
正在(zai)遷移(yi)的數(shu)據被其他事務長時間鎖(suo)死(si),可能導致讀(du)數(shu)據超(chao)時。
由于MySQL固有特點限制,CPU資源緊張時(shi),存儲(chu)引擎(qing)為Tokudb的表,讀取速度可(ke)能下降至10%。
建議(yi)您結合數(shu)(shu)據(ju)對(dui)比(bi)(bi)(bi)的(de)“稍后啟動”功能,選擇業務低峰期進(jin)行(xing)數(shu)(shu)據(ju)對(dui)比(bi)(bi)(bi),以便得到更為(wei)具(ju)有(you)參(can)考(kao)性的(de)對(dui)比(bi)(bi)(bi)結果。由于同步(bu)具(ju)有(you)輕微的(de)時(shi)差(cha),在(zai)數(shu)(shu)據(ju)持續操(cao)作過程中進(jin)行(xing)對(dui)比(bi)(bi)(bi)任務,可能會出現少量數(shu)(shu)據(ju)不(bu)一(yi)致對(dui)比(bi)(bi)(bi)結果,從(cong)而失去參(can)考(kao)意義(yi)。
操作要求
由(you)于一些無法預(yu)知或人為因(yin)素及環境突變導(dao)致遷(qian)移失(shi)敗的情況,數據(ju)庫復制服務提(ti)供(gong)以下常見的操(cao)作限制,供(gong)您在遷(qian)移過程中參(can)考
類型名稱
操作限(xian)制(需(xu)要人為配合)
注意事項
相(xiang)互關聯(lian)的數據(ju)對象(xiang)要確(que)保(bao)同時遷(qian)移,避免遷(qian)移因關聯(lian)對象(xiang)缺失,導致遷(qian)移失敗。常見(jian)的關聯(lian)關系:視圖(tu)引(yin)用(yong)表、存儲過程/函(han)數/觸發(fa)器引(yin)用(yong)視圖(tu)/表、主外(wai)鍵關聯(lian)表等。
不支持外鍵級聯操作(zuo)。
不支持高(gao)版本(ben)到低版本(ben)的遷移。
不(bu)支(zhi)持源數據庫(ku)實例主備(bei)倒(dao)換。
支持斷點續(xu)傳(chuan)功(gong)能,但是對于無主鍵的表可(ke)能會(hui)出(chu)現重復插入數據的情(qing)況(kuang)。
在未選擇任何表的情況下,無法單(dan)獨遷移(yi)(yi)視圖(tu)、存儲過(guo)程等對象。同時目前(qian)不支持DRS自(zi)動判斷依存關系,如:具有主外鍵關系的表,單(dan)獨遷移(yi)(yi)將會失敗,遷移(yi)(yi)時需(xu)要一(yi)起遷移(yi)(yi)。
若(ruo)專屬計算集群不(bu)支持4vCPU/8G或以(yi)上規格(ge)實例,則無法創(chuang)建遷移任務。
全量遷移不支持修改表結構等DDL操作(zuo)。
目(mu)標(biao)數據庫實例狀(zhuang)態需為可(ke)讀寫狀(zhuang)態,否則可(ke)能(neng)遷(qian)移(yi)失敗(bai)。
源庫和目標(biao)庫為RDS for MySQL實(shi)例時,不(bu)支持帶有(you)TDE特性并(bing)建(jian)立具有(you)加密功能表。
操作須(xu)知(zhi)
遷移過(guo)程中,不允(yun)許(xu)修改、刪除連接源和目標(biao)數據(ju)庫的(de)(de)用(yong)戶(hu)的(de)(de)用(yong)戶(hu)名、密(mi)碼、權限,或(huo)修改源和目標(biao)數據(ju)庫的(de)(de)端口號(hao)。
遷移(yi)過(guo)程中,不建(jian)議對目標數據庫進行主備切換。
在遷移任務(wu)結束之(zhi)前,不允(yun)許目(mu)標(biao)數據庫提前中斷公網連接。
遷移過程(cheng)中,不允許(xu)源庫(ku)寫入binlog格式為statement的數(shu)據。
遷移過程(cheng)中,不(bu)允許(xu)源庫執行清除(chu)binlog的操作。