停機(jī)遷移方案
系統(tǒng)停機(jī),沒有流量寫入疙筹,此時老的單庫單表數(shù)據(jù)庫靜止富俄,然后用寫好的導(dǎo)數(shù)程序跑起來禁炒,寫入分庫分表里去。
雙寫遷移方案
簡單來說霍比,就是在線上系統(tǒng)里面幕袱,之前所有寫庫的地方,增刪改操作悠瞬,都除了對老庫增刪改凹蜂,都加上對新庫的增刪改,這就是所謂雙寫阁危,同時寫倆庫玛痊,老庫和新庫。
然后系統(tǒng)部署之后狂打,新庫數(shù)據(jù)差太遠(yuǎn)擂煞,用之前說的導(dǎo)數(shù)工具,跑起來讀老庫數(shù)據(jù)寫新庫趴乡,寫的時候要根據(jù)gmt_modified這類字段判斷這條數(shù)據(jù)最后修改的時間对省,除非是讀出來的數(shù)據(jù)在新庫里沒有,或者是比新庫的數(shù)據(jù)新才會寫晾捏。
接著導(dǎo)萬一輪之后蒿涎,有可能數(shù)據(jù)還是存在不一致,那么就程序自動做一輪校驗惦辛,比對新老庫每個表的每條數(shù)據(jù)劳秋,接著如果有不一樣的,就針對那些不一樣的胖齐,從老庫讀數(shù)據(jù)再次寫玻淑。反復(fù)循環(huán),直到兩個庫每個表的數(shù)據(jù)都完全一致為止呀伙。