今天我來為大家介紹三款Sql Server數據庫比較和同步的軟件.

1.SqlDelta 2.Redgate Sql Compare 3. D-Softs Database Compare

因為工作的需要筆者需要開發並維護三個子公司的管理軟件,由於新程序首先部署在筆者所在的公司,所以等到分公司使用的時候不但需要更新程序,還要保證數據庫結構是一致的,對於某些基礎數據的表的內容也需要一致.

最開始不知道有這方面的軟件,我都是自己寫日誌或者是寫腳步讓程序同步,後來發現太費神了,而且同步的時候總有些腳步沒寫好或者太麻煩,有時候涉及到十幾個數據表和存儲哦過程,真搞不好會漏掉一些.

所以我搜索了一下這方面的軟件,發現真有不少.

 

我用過比較好用的就是這三款, sql delta, Redgate sql compare, D-Softs Database Compare. (微軟自己的也用過,太麻煩)

基本上我需要的功能就是建立三個比較項目,設置好需要比較的數據對象,每次需要同步的時候點一下比較,大概瀏覽一下找出的不同之處然後點一下同步,就OK了,怎樣很方便吧.

先來看看這三個軟件的樣子

 

Sql Delta

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql server

D-Softs Database Compare

 

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_database_02

RedGate SQL Compare

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql server_03

以上就是三款軟件在建立項目(數據庫鏈接的界面), 操作方式都差不多,需要提供Source和Target的鏈接信息.

值得一提的是,你可以直接輸入 xxx.gicp.net,1433這樣的網址,這樣只要你的外地服務器安裝一個花生殼再開通Sql Server的端口,

就可以直接通過互聯網進行比較同步,只要網絡不是很慢,比較的速度都很快.

 

再看看選擇數據庫對象和比較結果

都支持表,存儲過程,觸發器等等數據對象的選擇,如果您確認存儲過程沒有進行過改動就可以不選擇,這樣就可以加快比較的速度.

D-Softs的設定更像是sql server 2005的樣子.

對於比較的結果都有語法高亮的顯示.

 

sql delta

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql server_04

 

 

D-Softs

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql server_05

 

RedGate

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_database_06

 

開始同步

大同小異, 都會計算數據庫對象的依存關係,也就是説先更改依賴關係最小的,否則出現先建立用到自定義數據類型的表,後才建立自定義數據類型,那肯定是不會成功的.

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_database_07

Sql Delta

D-Softs

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql_08

RedGate

 

 

sql server比對兩個查詢結果的差異 sqlserver對比兩個數據庫_sql server_09

 

還有很多功能,像數據的比較和同步,以及更詳細的設定就不一一介紹了.