我之所以會(huì)寫(xiě)這篇對(duì)比文章,是因?yàn)楣拘庐a(chǎn)品研發(fā)真實(shí)經(jīng)歷過(guò)這個(gè)痛苦過(guò)程(傳統(tǒng)基于SQL Server開(kāi)發(fā)的C/S產(chǎn)品轉(zhuǎn)為MySQL云產(chǎn)品)。首次需要數(shù)據(jù)轉(zhuǎn)換是測(cè)試環(huán)節(jié),當(dāng)時(shí)為了快速驗(yàn)證新研發(fā)云產(chǎn)品性能與結(jié)果準(zhǔn)確性(算法類),所以需大量的原始數(shù)據(jù),最快的辦法就是使用老產(chǎn)品的真實(shí)數(shù)據(jù)。因?yàn)樵谇捌跀?shù)據(jù)轉(zhuǎn)換時(shí)主用于內(nèi)部驗(yàn)證,并沒(méi)有花很多心思去處理這個(gè)事情,一般數(shù)據(jù)能導(dǎo)過(guò)去,不對(duì)的地方自己再手工處理一下就好了。后面對(duì)這個(gè)轉(zhuǎn)換工具引起了極大的重視是正式有老客戶升級(jí)時(shí),因?yàn)檎酵度胧褂镁腿莶坏冒朦c(diǎn)錯(cuò)誤(當(dāng)時(shí)至少有幾百家客戶需要升級(jí)新產(chǎn)品),所以數(shù)據(jù)轉(zhuǎn)移第一要求是百分百的準(zhǔn)確率,其次是速度要快?,F(xiàn)在回想起來(lái),當(dāng)時(shí)要有這么一篇對(duì)比文章,那我就不會(huì)浪費(fèi)那么多時(shí)間在查找、對(duì)比、驗(yàn)證工具和數(shù)據(jù)維護(hù)修正上了,所以真心希望通過(guò)這篇對(duì)比文章能給大家提供一些參考或幫助!下面進(jìn)入正題:
在部署前期,首要任務(wù)就是考慮如何快速把基于 SQL Server 數(shù)據(jù)庫(kù)的應(yīng)用程序移植到阿里云的 MySQL 數(shù)據(jù)庫(kù)。由于程序是基于 O/R mapping 編寫(xiě),并且數(shù)據(jù)庫(kù)中沒(méi)有使用存儲(chǔ)過(guò)程、用戶函數(shù)等數(shù)據(jù)庫(kù)功能,因此僅僅需要考慮的是數(shù)據(jù)庫(kù)中的數(shù)據(jù)如何轉(zhuǎn)換到新的 MySQL 數(shù)據(jù)庫(kù)中。
通過(guò)度娘查找,找到如下四種可以使用的工具,并且每一種工具都有大量的用戶,還有不少用戶在自已的博客中寫(xiě)下了圖文使用經(jīng)驗(yàn),這四種工具分別是:
● SQLyog(https://www.webyog.com/product/sqlyog)
● Navicat Premium(https://www.navicat.com/products/navicat-premium)
● Mss2sql(http://www.convert-in.com/)
● DB2DB(http://www.szmesoft.com/DB2DB)
由于公司需要處理的是業(yè)務(wù)數(shù)據(jù)庫(kù),因此必須保證數(shù)據(jù)轉(zhuǎn)換的準(zhǔn)確率(不允許丟失數(shù)據(jù),數(shù)據(jù)庫(kù)字段、索引完整),并且需要保證數(shù)據(jù)庫(kù)遷移后能立即使用。因此在實(shí)施數(shù)據(jù)遷移前,對(duì)這幾種 SQLServer 到 MySQL 的遷移工具進(jìn)行一個(gè)全面測(cè)試。下面我們將基于以下需求為前提進(jìn)行測(cè)試:
● 軟件易用性
● 處理速度和內(nèi)存占用
● 數(shù)據(jù)完整性
● 試用版限制
● 其它功能
一、測(cè)試用的源數(shù)據(jù)庫(kù)和系統(tǒng)
用于測(cè)試的源數(shù)據(jù)庫(kù)名為 MesoftReportCenter。由于其中一個(gè)測(cè)試工具試用版限制只能處理兩張數(shù)據(jù)表的原因,因此我們只選取了記錄數(shù)最多的兩張數(shù)據(jù)表:HISOPChargeIntermediateResult 和 HISOPChargeItemIntermediateResult。兩張數(shù)據(jù)表合計(jì)的記錄數(shù)約為 328萬(wàn),數(shù)據(jù)庫(kù)不算大,但針對(duì)本次進(jìn)行測(cè)試也基本上足夠了。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26