引入
云上 MySQL 數據庫 —> 向達夢國產化數據庫遷移
下載&安裝
達夢客戶端工具 DM->可參考之前國產化專欄達夢文章
創建模式
在客戶端分別依次執行以下命令腳本(這里沒有通過客戶端管理工具去創建達夢數據庫的模式,當然也可以通過圖形化界面去創建模式)
CREATE TABLESPACE
YD_KNOW DATAFILE
'YD_KNOW.DBF' SIZE 128;CREATE USER YD_KNOW
IDENTIFIED BY
"YD_KNOW123456"
DEFAULT TABLESPACE
YD_KNOW;GRANT RESOURCE TO
YD_KNOW;
上述,以 YD_KNOW 為例。
可視界面化 數據遷移DTS
接著,打開 DM8 數據遷移 DTS 工具:
建立遷移作業
打開主頁即點擊“🏠”,新建工程,建立遷移作業-任務如下
選擇遷移方式
選擇遷移方式:同構數據庫 VS 異構數據庫
這里選擇 MySQL ===> DM
源數據庫
輸入源數據庫信息:主機名+端口+用戶名+密碼+庫名稱
這里,使用默認版本可能會出現 jdbc 連接異常
我們指定高驅動版本8即可
目標數據庫
輸入遷移目標數據庫信息:主機名+端口+用戶名+密碼
指定對象復制或查詢
指定遷移對象,這里可選擇之前建立好的,當然,也可以通過工具去建立到新的模式下
溫馨提示:源模式選擇源庫名稱,目標模式選擇之前創建好的,遷移到你對應需要的目標模式即可。
指定遷移對象表結構以及數據
數據遷移過程
我們看看遷移情況,不出所料有成功的也有異常的
這里調整字段屬性的長度定義即可,之前在國產化專欄中已有介紹處理方式,不再贅述!
遷移統計情況
我們可以查閱整體的遷移情況,以及相關日志的查閱,便于排查數據的遷移異常分析
歸納&&總結
數據庫遷移&異構性兼容:本身數據庫遷移,其實是一項復雜的任務。在源庫到目標庫遷移的過程中,由于多方面因素,就比如數據庫表屬性上存放的內容在各個數據庫體系中所占的位寬都可能存在差異,還有比方說同樣在 utf-8 的字符集下存放中文的個數也有所不同,需要我們詳細規劃,也需要我們仔細留意,細致執行。
歸納:
數據轉換和兼容性:將數據從源數據庫遷移到目標數據庫時,其中數據結構、屬性類型、字段索引、約束和關系等可能需要作出調整以適應并匹配目標數據庫的模型。
數據恢復和完整性:將數據從源數據庫遷移到目標數據庫時,有可能出現異常中斷,或者出現數據丟失。針對異常的情況進行分析,予以人工干預,檢測并修復數據以確保數據的完整性。
從源庫到目標庫的遷移過程中,考慮目標庫的高性能和高可擴展性,不同的 DBMS 可能具有不同的特性和擴展性能力,可能會出現一定性能損失,還有確保數據的安全,以及對整個遷移作業進行管理和監控,這些都是極其重要的考量因素。
總結:
可以通過各廠家提供的遷移工具,進行自動化和轉換數據類型格式,以此保障數據的完整性、準確性。
同時,建議各提供商通過一系列機器學習算法,加強對數據格式類型自動化轉換、數據內容可靠性訓練能力。
通過數據庫性能優化工具和技術,對數據庫不斷進行調優,以提高遷移到目標庫后系統的高性能和高可擴展性。
在一定程度上,去減少需要我們人工干預并提高準確性的工作量,使得整個數據庫遷移過程可視化出來、更高效、更準確、更可靠!
關注了解更多國產化適配內容實踐回顧
推薦閱讀
在國產化面前 | 我們應該如何面對?
分布式數據庫 | 淺談OB演進的一點思考
淺談 | DBA與架構的一次對話交流
開源數據庫 | 記一次多方式連接 openGauss 實踐之旅
openEuler+openGauss|記一次基于鯤鵬歐拉搭建 openGauss 實踐過程