| 
 一、前言 
  在大部分的現(xiàn)場項目中,如果使用關(guān)系庫的總站和子站的數(shù)量比較多的時候,數(shù)據(jù)的匯總和同步是個很麻煩的問題,況且不是所有的關(guān)系庫都具有存儲過程和觸發(fā)器等功能。 
因此,關(guān)系庫同步工具應(yīng)運而生,能夠不依賴數(shù)據(jù)庫軟件本身而實現(xiàn)對多個關(guān)系庫的數(shù)據(jù)進行同步和匯總的功能。 
二、整體概述 
1、主界面 
  
  
運行:在“配置”之后,執(zhí)行從各個遠程數(shù)據(jù)庫到本地數(shù)據(jù)庫的匯總和下置過程。 
配置:設(shè)置參數(shù),包括IP、DSN、SQL表和字段等。 
清空本地表:對于每個遠程數(shù)據(jù)庫的機器號,刪除本地數(shù)據(jù)庫中所有改號的記錄。 
清空:界面顯示操作。 
導(dǎo)出:執(zhí)行錯誤時便于分析。 
2、運行程序后,首先點“配置”進行遠程數(shù)據(jù)庫和表結(jié)構(gòu)設(shè)置: 
  
  
  定時器周期:單位s,執(zhí)行內(nèi)部定時器掃描的間隔,建議為1。 
下次匯總間隔:下次執(zhí)行匯總的時間間隔,即使周期短,每次執(zhí)行結(jié)束才會執(zhí)行下個工作過程。 
下次下置間隔:下次執(zhí)行下置的時間間隔,即使周期短,每次執(zhí)行結(jié)束才會執(zhí)行下個工作過程。 
3、DSN設(shè)置界面 
  
  
IP:數(shù)據(jù)庫所在機器的地址 
機器號:主要數(shù)據(jù)表,字段為 machine_id 的數(shù)值 
DSN:連接字符串 
4、SQL表和字段設(shè)置界面 
  
  
表名:SQL中的表名。 
需要更新記錄: 
如果不鉤選“主要表”,當(dāng)不選中時只進行insert的增加記錄操作,當(dāng)選中時會比較其它非主鍵字段的內(nèi)容,數(shù)據(jù)不一樣時進行update的更新記錄操作; 
如果鉤選“主要表”,這個選項不起作用。 
主要表,根據(jù)機器號清空表使能: 
如果鉤選,該表是針對混凝土主要數(shù)據(jù)表進行的操作,必須設(shè)置表的比較標(biāo)記字段(類似于主鍵),表必須包含machine_id、note_no、IsNotBackup這幾個字段,否則執(zhí)行過程異常; 
如果不溝選,則該表中的上述字段無效果,就是一般的表,“需要更新記錄”選項將決定是否對遠程更新過的數(shù)據(jù)進行本地更新。 
主要表,根據(jù)機器號寫到客戶端: 
選擇改選項時,表名為中心的臨時表,主下置表名為遠程使用的原表,當(dāng)臨時表的每條語句被執(zhí)行之后就會刪除改條記錄。表必須包含machine_id、IsNotBackup這幾個字段。 
字段名:SQL表中的字段; 
字段格式:支持的包括整數(shù)、浮點數(shù)、字符串。 
比較標(biāo)記:指明這個字段需要進行遠程和本地的查詢條件,相當(dāng)于主鍵的作用。 
三、總結(jié) 
關(guān)系庫同步工具的應(yīng)用,使得原本多個關(guān)系庫之間的數(shù)據(jù)同步和匯總由復(fù)雜而變得簡單。只需要進行幾步配置,就可以運行使用。 
 
		          	
           |