1. SQLSERVER服務(wù)器上面安裝oracle客戶端,配置服務(wù)命名(假設(shè)為 test)
創(chuàng)新新互聯(lián),憑借十年的成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),本著真心·誠心服務(wù)的企業(yè)理念服務(wù)于成都中小企業(yè)設(shè)計(jì)網(wǎng)站有超過千家案例。做網(wǎng)站建設(shè),選成都創(chuàng)新互聯(lián)公司。
2. 在SQLSERVER服務(wù)器上面建立鏈接服務(wù)器,腳本如下
SQL code?
SQL code-- Adding linked server:
exec sp_addlinkedserver @server = 'test' ,
@srvproduct = 'ORACLE',
@provider = 'MSDAORA',
@datasrc = 'test'
-- Adding linked server login:
exec sp_addlinkedsrvlogin @useself='false ', @rmtsrvname = 'test',
@rmtuser = 'user', --數(shù)據(jù)庫用戶
@rmtpassword = 'password' --密碼
3. 建立一個(gè)作業(yè),通過作業(yè)調(diào)度存儲(chǔ)過程,存儲(chǔ)過程使用類似的語句將oracle的數(shù)據(jù)插入到sqlserver表中
SQL code?
insert into sqlserver表 select * from test..oracle表名
4. 如果要球ORACLE數(shù)據(jù)是實(shí)時(shí)增加的,并且ORACLE記錄上有遞增的字段,可以在SQLSERVER上面建立一個(gè)表記錄上次插入的id,然后下次可以從上次的ID+1開始繼續(xù)插入
SQL code?
insert into sqlserver表 select * from test..oracle表名 where id@id
5. 防止sqlserver同步的時(shí)候oracle仍在不斷的插入,每次要取一個(gè)結(jié)束ID
SQL code?
select @endid=max(id) from test..oracle表名.
可以利用數(shù)據(jù)庫復(fù)制技術(shù)來實(shí)現(xiàn)數(shù)據(jù)同步更新 。SQL復(fù)制的基本元素包括出版服務(wù)器、訂閱服務(wù)器、分發(fā)服務(wù)器、出版物和文章。 SQL SERVER 主要采用出版物、訂閱的方式來處理復(fù)制。源數(shù)據(jù)所在的服務(wù)器是出版服務(wù)器,負(fù)責(zé)發(fā)表數(shù)據(jù)。出版服務(wù)器把要發(fā)表的數(shù)據(jù)的所有改變情況的拷貝復(fù)制到分發(fā)服務(wù)器,分發(fā)服務(wù)器包含有一個(gè)分發(fā)數(shù)據(jù)庫,可接收數(shù)據(jù)的所有改變,并保存這些改變,再把這些改變分發(fā)給訂閱服務(wù)器 。
主要有以下幾個(gè)步驟:
1、配置出版服務(wù)器 :
(1)選中指定[服務(wù)器]節(jié)點(diǎn) ;
(2)從[工具]下拉菜單的[復(fù)制]子菜單中選擇[發(fā)布、訂閱服務(wù)器和分發(fā)]命令 ;
(3)系統(tǒng)彈出一個(gè)對(duì)話框點(diǎn)[下一步]然后看著提示一直操作到完成;
(4)當(dāng)完成了出版服務(wù)器的設(shè)置以后系統(tǒng)會(huì)為該服務(wù)器的樹形結(jié)構(gòu)中添加一個(gè)復(fù)制監(jiān)視器。同時(shí)也生成一個(gè)分發(fā)數(shù)據(jù)庫(distribution) 。
2、創(chuàng)建出版物 :
(1)選中指定的服務(wù)器;
(2)從[工具]菜單的[復(fù)制]子菜單中選擇[創(chuàng)建和管理發(fā)布]命令;
(3)在彈出的對(duì)話框中選擇要?jiǎng)?chuàng)建出版物的數(shù)據(jù)庫,單擊[創(chuàng)建發(fā)布] ;
(4)在[創(chuàng)建發(fā)布向?qū)的提示對(duì)話框中單擊[下一步]系統(tǒng)就會(huì)彈出一個(gè)對(duì)話框,選擇合適的復(fù)制類型;
(5)單擊[下一步]系統(tǒng)要求指定可以訂閱該發(fā)布的數(shù)據(jù)庫服務(wù)器類型,SQLSERVER允許在不同的數(shù)據(jù)庫如 ORACLE或ACCESS之間進(jìn)行數(shù)據(jù)復(fù)制;
(6)單擊[下一步]系統(tǒng)就彈出一個(gè)定義文章的對(duì)話框也就是選擇要出版的表 ;
(7)點(diǎn)擊[下一步]直到操作完成。
3、設(shè)計(jì)訂閱 :
(1)選中指定的訂閱服務(wù)器;
(2)從[工具]下拉菜單中選擇[復(fù)制]子菜單的[請(qǐng)求訂閱] ;
(3)按照單擊[下一步]操作直到系統(tǒng)會(huì)提示檢查SQL SERVER代理服務(wù)的運(yùn)行狀態(tài),執(zhí)行復(fù)制操作的前提條件是SQL SERVER代理服務(wù)必須已經(jīng)啟動(dòng);
(4)單擊[完成],即可實(shí)現(xiàn)實(shí)時(shí)備份數(shù)據(jù)庫。
可以使用數(shù)據(jù)庫比較與同步工具DBSync,具體做法:先建立一個(gè)任務(wù):以A為同步之源,以B為同步之目標(biāo),同步方式設(shè)置為增量同步,以后,只要A發(fā)生增刪改,就會(huì)同步更新至B。