數據庫分庫分表生產環境怎么實現不停機數據遷移或者擴容的?


在不停機條件下需要對數據的遷移或者擴容,這里推薦我們常用的一種方案,也就是在線雙寫的機制。

1、通過在寫原有的數據庫的同時也寫一份數據到我們的新的庫表中。

2、同樣寫一個后台遷移數據的程序,將我們的舊庫的數據通過我們的數據庫中間件遷移到新的多庫表中。

3、在遷移的過程中,每次插入數據的時候,還需要檢測數據的更新情況。比如,如果新的表中沒有當前的數據,則直接新增;如果新表有數據並沒有我們要遷移的數據新的話,我們就更新為當前數據,只能允許新的數據覆蓋舊的數據(這里其實推薦使用Canal這樣的數據庫同步中間件對增量更新做同步)

4、經過一輪之后,也就是假如舊表中1000萬條舊數據遷移完之后,我們就需要進行校驗,校驗兩邊數據是否是一模一樣的。

5、這樣反復的跑了幾天之后,就數據庫和新的數據庫肯定是會一模一樣的,最后觀察下數據正常了,就可以停掉舊庫的寫入動作了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM