目錄
-
簡介
數據庫是數據管理的技術。隨着時代的發展,信息成為每個部門,每個組織的最為寶貴的財富和資源,因此發展一個可以有效管理數據並行之有效的系統是非常有必要的。數據庫因此而誕生。作為信息系統的核心和基礎的數據庫得到了廣泛的應用。我們在網上檢索、購買圖書、訂購機票、車票、進行賬號管理等等,都是數據庫的應用。所以,這些數據的數據都是珍貴的,是無價的。當我們更換數據庫產品的時候,更是需要一個好的遷移工具輔助我們進行數據的遷移,從而,達夢DTS遷移工具,因此而生。
-
部署環境
表2‑1 部署環境
系統版本 |
Windows系統/LINUX 系統 |
CPU型號 |
Intel(R) i5-7200U CPU (2核)以上 |
磁盤空間 |
40G |
內存大小 |
2G |
數據庫管理工具 |
Navicat/DM數據遷移工具 |
表2‑2 磁盤規划
數據 |
/dev/mapper/vg_dm-lv_dmdata |
備份 |
/dev/mapper/vg_dm-lv_dmbak |
歸檔 |
/dev/mapper/vg_dm-lv_arch |
表2‑3 目錄規划
數據庫軟件安裝目錄 |
/home/dmdba/dmdbms |
實例安裝目錄 |
/dmdata |
歸檔存放目錄 |
/dmdata/arch |
備份存放目錄 |
/dmdata/dmbak/ |
-
遷移准備
-
Mysql新建數據庫
-
打開navicat工具,點擊左上角的新建數據庫,輸入數據庫名稱,字符集一般選擇UTF8,排序規則選擇UTF8_bin
圖3-1Mysql新建數據庫
-
Mysql導入數據
導入完成之后,就會如圖所示,每一張數據表的信息就會顯示在下面
圖3-2 Mysql導入數據成功
-
使用DTS進行遷移
-
新建遷移工程
-
啟動達夢遷移工具DTS,達夢數據庫遷移工具DTS一般在安裝目錄下的tool目錄下
圖3-3 新建工程
在展開新建的遷移工程,選擇遷移,右鍵,點擊新建組。新建組可以將同類遷移放在一個組里面,方便遷移工程的管理及使用。在彈出的對話框里填入組名即可,然后選中新建的組,點擊右鍵,新建遷移,輸入遷移名mysql,確定后會出現如下界面,進入達夢遷移工具遷移向導。
圖3-4 進入遷移向導
-
配置數據庫信息
Mysql需要配置以下幾個信息,(主機名,端口,用戶名,密碼,數據庫名稱),選中MySQL==>dm,點擊下一步。這里你可以看到達夢數據庫目前支持遷移到達夢數據庫的數據庫類型及其他數據存儲類型,以及達夢數據庫能夠使用該工具遷出到其他數據庫或其他數據存儲類型的支持列表。示例如下:
圖3-5 配置信息
進入MySQL登陸連接配置頁面,根據源端MySQL數據庫的信息,填入對應的信息即可。在這里需要注意,如果數據庫版本比較高的情況下,建議下載較高版本的MySQL驅動,否則會報"錯誤消息: Unknown initial character set index '224' received from server. Initial client character set can be forced via the 'characterEncoding' property.",驅動下載地址鏈接:https://dev.mysql.com/downloads/connector/j/)。此處URL填寫為:jdbc:mysql://192.168.1.2:3306/DMTES?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true
圖3-6 自定義驅動
此處遷移的庫名為SYSDBA數據庫,選定點擊下一步。進入目的端達夢數據庫信息配置界面
圖3-7 配置DM數據庫信息
-
開始遷移
信息配置完畢之后,點擊下一步開始遷移,操作如圖所示:
圖3-8 選擇對應模式
選擇目的端對應的模式名,此處需要注意,達夢數據庫不會主動創建與源端MySQL數據庫名一樣的模式及其表空間,默認使用sysdba模式,所以此處建議提前規划好遷移到達夢數據庫后的模式名及表空間,並提前創建。此處選擇DMTEST模式,點擊下一步,選擇遷移對象。
圖3-9 確認信息
確認遷移信息無誤后,點擊完成,進入遷移任務執行階段,如下圖所示。詳細展示了遷移過程中,每個任務的執行時間及執行結果。
圖3-10查看遷移結果
-
解決部分表遷移失敗
在遷移過程中,可能會出現失敗的情況,這時,我們需要點擊遷移工具的錯誤詳情,此處出現的錯誤則是因為在遷移的過程中,遷移工具創建表失敗,是因為"0000-00-00 00:00:00"創建表達式中的時間表達格式在達夢中並不兼容,所以我們需要做出修改,修改成功后創建表格成功便可重新導入數據。如圖所示:
圖3-11 解決表無法創建
CREATE TABLE "DMTEST"."T_WL_KHI" ( "ID" INT IDENTITY(1,1) NOT NULL, "TYPE" VARCHAR(20) NULL, "VAL" DEC(11,2) DEFAULT 0.00 NULL, "DATA_TIME" VARCHAR(40) NULL, "REPORT_TIME" VARCHAR(40) NULL, "REPORT_YEAR" VARCHAR(4) NULL, "DTIME" INT NULL, "UPDATED" INT NULL, "INPUT_TIME" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL, "REVIEW_STATUS" INT NULL, "REVIEW_TIME" TIMESTAMP(0) DEFAULT '1901-00-00 00:00:00' NOT NULL ); |
圖3-12 失敗表遷移成功
圖3-13 遷移成功
技術社區地址:https://eco.dameng.com