MySQL和MsSQL實時自動數據同步
使用SyncNavigator輕松實現數據庫異地同步、斷點續傳、異構同步
最近碰到一個項目php和asp程序之間數據如何共享導出和導入所以一直在研究數據庫同步的問題,在網上查了很多資料,也請教了很多人,找到了一種通過快照復制的方法。研究了一番後發現之前就是用的這個方法,效果不是很好,果斷放棄。經過了一番尋覓和他人指點,最後從一位熱心網友那裡得知一款很好用的軟件—— SyncNavigator。
<特別感謝QQ網友會爬的豬豬提供的技術支持信息>
好東西就要拿出來跟大家分享,所以今天向大家介紹一下這款軟件,及其一些使用方法。下面先看看它有什麼強大的功能吧!
SyncNavigator的基本功能:
自動同步數據/定時同步數據
無論是實時同步/24小時不間斷同步,還是根據計劃任務(每小時/每日/每周/等)定時自動同步都能完全勝任。
完整支持 Microsoft SQL Server
完整支持 Microsoft SQL Server 2000 2005 2008 數據庫類型。並能在不同數據庫版本之間相互同步數據。
支持 MySQL 4.1 以上版本
支持 MySQL 4.1 5.0 5.1 5.4 5.5。並能在不同數據庫版本之間相互同步數據。
無人值守和故障自動恢復
當數據庫故障或網絡故障以後,無需人工干預(或操作)自動恢復同步並確保數據完全准確,可靠。
同構數據庫同步/異構數據庫同步
SQL Server to SQL Server, MySQL to MySQL, SQL Server to MySQL 等都能輕松實現。
斷點續傳和增量同步
當同步完成(或中斷)後,再次同步時能繼續上一次的位置增量同步,避免每次都需要從頭開始的問題。
創建一個同步項目
安裝完成後會有兩個圖標:
1. 點擊 "SyncNavigator (客戶端)" 圖標進入系統。
2. 在登錄界面中輸入連接到的服務器地址,點擊 "確定" 按鈕開始連接。
注意:這裡不是登陸您的數據庫,而是登陸到本軟件的管理端。
默認情況下直接點擊 "連接" 按鈕即可(本機默認已經安裝)。
默認服務器登錄用戶名為 "admin" 密碼為空。
本機服務器地址為 127.0.0.1 。
您可以使用域名或者IP地址作為服務器地址。
3. 切換到 "同步管理" 面板中點擊 "新建" 按鈕開始創建同步項目。
4. 首先切換到 "來源數據庫" 選項卡。填寫同步的來源數據庫信息。 (存放需要同步數據的數據庫叫做來源數據庫)
一般情況下只需要輸入數據庫地址,數據庫名稱,登錄用戶名,登錄密碼。
數據庫地址: 來源數據所在機器的地址。可以是域名或者IP地址。
數據庫名稱: 來源數據庫名稱。如果已經指定了默認的登錄數據庫可以為空。
登錄用戶名: 登錄數據庫服務器使用的用戶名。如果需要使用Windows賬戶登錄請變更 "登錄方式"
連接測試: 測試輸入的信息是否正確。如果連接失敗則會返回具體錯誤信息。
5. 切換到 "目標數據庫" 選項卡。以相同的方式填寫同步的目標數據庫。
目標數據可以像來源數據庫那樣選擇已有的數據庫,也可以通過本軟件創建一個新的數據庫,選擇已有數據庫步驟大致同上,新建數據庫步驟如下:
您只需要創建一個新的目標數據庫,軟件會自動創建最大兼容的表結構。
如果您希望目標數據庫與來源數據庫表結構完全一致,您只需要在目標數據庫創建一個空表結構即可。
當您使用 MySQL 作為來源數據庫時,同步的表至少需要一個主鍵。
目標數據庫不應包含外鍵約束,因為它可能導致部分數據無法同步。
如果您的目標數據庫與來源數據庫結構(如字段類型,約束)不兼容,這可能導致部分數據無法同步。
假設您設置來源庫為 192.168.1.2 ,設置目標數據庫為 192.168.1.3, 那麼數據將從192.168.1.2 同步到 192.168.1.3。如果您的方向設置錯誤,可能會導致數據被覆蓋。
6. 切換到 "同步內容設置" 選項卡。選擇需要同步的數據庫表。
如果需要設置每個表的具體內容可以點擊 "詳細設置" 按鈕進行調整。
您可以設置條件過濾。比如只查詢評分大於90的表記錄,或者隱藏不需要同步的字段。
如果在這一個步驟未勾選任何表則不會同步任何內容。
7. 點擊 "確定"按鈕完成項目設置。
8. 切換到 "總控制台" 面板中選擇需要開始同步的項目。點擊 "開始" 按鈕即可開始數據庫同步。
自動同步數據庫數據
使用 HKROnlineSyncNavigator 自動同步數據庫數據。與谷歌日歷、Hotmail日歷等的操作非常類似,您只需要設置同步任務執行的時間系統便能在指定的時間自動運行。
1. 在 "同步管理"面板中選擇需要設置的項目,點擊 "修改" 按鈕開始設置。
2. 切換到 "計劃調度設置" 選項卡,點擊 "新建" 按鈕新建一個運行計劃。
3. 指定需要運行的時間。設置完成後點擊 "確定" 按鈕完成設置。
開始日期: 計劃開始的時間。可以設置為以後的一個時間點表示未來執行。
一次: 只執行一次同步任務。執行完成後此計劃立即失效。
每天: 每天都在指定的時間運行。如果需要在每天都運行多次,請勾選 "重復任務" 復選框並設置間隔周期。
每周: 每周按照指定的時間運行。如果不需要在指定的時間運行可以取消具體的時間復選框。
過期日期: 任務將在指定的時間過期。過期後的任務不再被執行。
使用這個計劃: 表示該計劃是否有效。如果取消此復選框計劃任務將不再被執行。
4. 點擊 "確定"按鈕保存當前設置。
預計下次運行時間 列顯示了同步任務下次自動運行的時間。
啟動/停止服務端服務
1. 點擊 "SyncNavigator(客戶端)" 圖標進入系統。
2. 在登錄界面中點擊 "取消" 按鈕後點擊 "本地服務" 按鈕。
2. 打開界面後,圖中綠色區域顯示當前服務的啟動狀態。點擊區域內按鈕可以切換服務狀態為 "啟動" 或"停止"。
已啟動: 服務端已經啟動。可以正常運行數據庫同步任務並處理客戶端命令。
已停止: 服務端已經停止。所有的同步任務不會被運行,並不再處理客戶端的命令。
SQL Server 自動同步到MySQL
本文章將向您介紹如何將數據從SQL Server 自動或定時同步到 MySQL 數據庫(或從 MySQL 自動或同步到 SQL Server 數據庫)。只需通過幾個步驟即可輕松實現。
1. 在 "同步管理"面板中點擊 "新建" 按鈕創建同步項目。
2. 首先切換到 "來源數據庫" 選項卡。填寫同步的來源數據庫信息。
數據庫類型選擇 SQL Server 2000 / 2005 /2008.
3. 切換到 "目標數據庫" 選項卡。以相同的方式填寫同步的目標數據庫。
數據庫類型選擇 Mysql 4.1 5.0 5.1 5.4 5.5
當您從 MySQL 同步到 SQL Server 時,每張表至少需要一個主鍵(從 SQL Server 到 MySQL 不需要)
4. 切換到 "同步內容設置" 選項卡。選擇需要同步的數據庫表。
5. 切換到 "計劃調度設置" 選項卡,新建一個運行計劃。
如果需要自動同步(如24小時不間斷)則選擇自動。
如果需要定時同步,則點擊對應的選項。
6. 點擊 "確定",設置成功!
注意:當您使用軟件自動創建表結構,從MySQL同步到 SQL Server 可能出現的問題:
1. MYSQL 的 DateTime 類型,可能存在 '0001-1-10:0:0' 值,與SQL Server 的 DateTime取值范圍不兼容,需要將 SQL Server 的
DateTime 類型修改為 DateTime2。
2. MySQL 的UTF-8 字符集數據庫,同步到 SQL Server 時,可能需要將 SQL Server 的 varchar 類型需要修改為 nvarchar 類型。
提升數據庫同步速度和性能
SyncNavigator 默認的同步項目配置僅適合中小型的數據庫。當您需要對大型,超大型數據庫進行同步時,進行以下設置可以明顯的提高數據庫同步速度。
1. 在 "同步管理"面板中選擇需要設置的項目,點擊 "修改" 按鈕開始設置。
2. 切換到 "同步參數設置" 選項卡。
參數介紹:
自動優化網絡傳輸吞吐量: 允許軟件根據表結構動態調節同步時的傳輸數據量。建議勾選。
輪詢檢索緩存大小: 當您使用大型數據庫時,建議設置為2048或以上。
數據接收緩存大小: 當您使用大型數據庫時,建議設置為2048或以上。
BLOB類型緩存大小: 當您使用大型數據庫時,建議設置為50或以上。
緩存數據庫結構: 當您正式部署項目後,可以勾選此選項以提高同步速度。
對超大型數據庫進行優化: 當您正式部署項目後,可以勾選此選項以提高同步速度。 SyncNavigator的功能這篇博客就介紹這麼多,還有很多功能就不一一列出了,留給有需要的同志一些自己探索的機會。希望此博客能夠對和我有同樣需求的人一點點幫助,那麼就不白寫啦!