真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

sqlserver數(shù)據(jù)庫同步的簡單介紹

SQLServer數(shù)據(jù)庫同步怎么實(shí)現(xiàn)最好?

常見的數(shù)據(jù)庫同步,主要有下面幾種方法來實(shí)現(xiàn)。

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)林甸免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

1。對于少量的數(shù)據(jù),采用SQL

Server

自帶的導(dǎo)入導(dǎo)出工具即可。

2。采用SQLServer自帶的數(shù)據(jù)庫同步功能,叫做《訂閱/分發(fā)》,可以實(shí)現(xiàn)一個(gè)數(shù)據(jù)庫,或者多個(gè)數(shù)據(jù)庫的同步。

3。如果對數(shù)據(jù)庫這塊不熟悉,也可以采用專業(yè)的數(shù)據(jù)庫同步工具,如

SyncNavigator

.

它可以實(shí)現(xiàn)較為復(fù)雜的數(shù)據(jù)庫同步。

你自己寫觸發(fā)器或者程序來實(shí)現(xiàn)基本上是不現(xiàn)實(shí)的。比如網(wǎng)絡(luò)中斷的異常處理,等等,都需要考慮的非常詳細(xì),沒有個(gè)一年半載是寫不出來的。

怎樣同步兩個(gè)SQLSERVER的數(shù)據(jù)

同步兩個(gè)SQLServer數(shù)據(jù)庫 如何同步兩個(gè)sqlserver數(shù)據(jù)庫的內(nèi)容?程序代碼可以有版本管理cvs進(jìn)行同步管理,可是數(shù)據(jù)庫同步就非常麻煩,只能自己改了一個(gè)后再去改另一個(gè),如果忘記了更改另一個(gè)經(jīng)常造成兩個(gè)數(shù)據(jù)庫的結(jié)構(gòu)或內(nèi)容上不一致.各位有什么好的方法嗎? 一、分發(fā)與復(fù)制 用強(qiáng)制訂閱實(shí)現(xiàn)數(shù)據(jù)庫同步操作. 大量和批量的數(shù)據(jù)可以用數(shù)據(jù)庫的同步機(jī)制處理: // 說明: 為方便操作,所有操作均在發(fā)布服務(wù)器(分發(fā)服務(wù)器)上操作,并使用推模式 在客戶機(jī)器使用強(qiáng)制訂閱方式。 二、測試通過 1:環(huán)境 服務(wù)器環(huán)境: 機(jī)器名稱: zehuadb 操作系統(tǒng):windows 2000 server 數(shù)據(jù)庫版本:sql 2000 server 個(gè)人版 客戶端 機(jī)器名稱:zlp 操作系統(tǒng):windows 2000 server 數(shù)據(jù)庫版本:sql 2000 server 個(gè)人版 2:建用戶帳號 在服務(wù)器端建立域用戶帳號 我的電腦管理-本地用戶和組-用戶-建立 username:zlp userpwd:zlp 3:重新啟動(dòng)服務(wù)器mssqlserver 我的電腦-控制面版-管理工具-服務(wù)-mssqlserver 服務(wù) (更改為:域用戶帳號,我們新建的zlp用戶 .\zlp,密碼:zlp) 4:安裝分發(fā)服務(wù)器 a:配置分發(fā)服務(wù)器 工具-復(fù)制-配置發(fā)布、訂閱服務(wù)器和分發(fā)-下一步-下一步(所有的均采用默認(rèn)配置) b:配置發(fā)布服務(wù)器 工具-復(fù)制-創(chuàng)建和管理發(fā)布-選擇要發(fā)布的數(shù)據(jù)庫(sz)-下一步-快照發(fā)布-下一步-選擇要發(fā)布的內(nèi)容-下一步-下一步-下一步-完成 c:強(qiáng)制配置訂閱服務(wù)器(推模式,拉模式與此雷同) 工具-復(fù)制-配置發(fā)布、訂閱服務(wù)器和分發(fā)-訂閱服務(wù)器-新建-sql server數(shù)據(jù)庫-輸入客戶端服務(wù)器名稱(zlp)-使用sql server 身份驗(yàn)證(sa,空密碼)-確定-應(yīng)用-確定 d:初始化訂閱 復(fù)制監(jiān)視器-發(fā)布服務(wù)器(zehuadb)-雙擊訂閱-強(qiáng)制新建-下一步-選擇啟用的訂閱服務(wù)器-zlp-下一步-下一步-下一步-下一步-完成 5:測試配置是否成功 復(fù)制監(jiān)視器-發(fā)布衿?zehuadb)-雙擊sz:sz-點(diǎn)狀態(tài)-點(diǎn)立即運(yùn)行代理程序 查看: 復(fù)制監(jiān)視器-發(fā)布服務(wù)器(zehuadb)-sz:sz-選擇zlp:sz(類型強(qiáng)制)-鼠標(biāo)右鍵-啟動(dòng)同步處理 如果沒有錯(cuò)誤標(biāo)志(紅色叉),恭喜您配置成功 6:測試數(shù)據(jù) 在服務(wù)器執(zhí)行: 選擇一個(gè)表,執(zhí)行如下sql: insert into wq_newsgroup_s select '測試成功',5 復(fù)制監(jiān)視器-發(fā)布服務(wù)器(zehuadb)-sz:sz-快照-啟動(dòng)代理程序 -zlp:sz(強(qiáng)制)-啟動(dòng)同步處理 去查看同步的 wq_newsgroup_s 是否插入了一條新的記錄 測試完畢,通過。 7:修改數(shù)據(jù)庫的同步時(shí)間,一般選擇夜晚執(zhí)行數(shù)據(jù)庫同步處理 (具體操作略) :d /* 注意說明: 服務(wù)器一端不能以(local)進(jìn)行數(shù)據(jù)的發(fā)布與分發(fā),需要先刪除注冊,然后新建注冊本地計(jì)算機(jī)名稱 卸載方式:工具-復(fù)制-禁止發(fā)布-是在"zehuadb"上靜止發(fā)布,卸載所有的數(shù)據(jù)庫同步配置服務(wù)器 注意:發(fā)布服務(wù)器、分發(fā)服務(wù)器中的sqlserveragent服務(wù)必須啟動(dòng) 采用推模式: "d:\microsoft sql server\mssql\repldata\unc" 目錄文件可以不設(shè)置共享 拉模式:則需要共享~! */ 少量數(shù)據(jù)庫同步可以采用觸發(fā)器實(shí)現(xiàn),同步單表即可。 三、配置過程中可能出現(xiàn)的問題 在sql server 2000里設(shè)置和使用數(shù)據(jù)庫復(fù)制之前,應(yīng)先檢查相關(guān)的幾臺sql server服務(wù)器下面幾點(diǎn)是否滿足: 1、mssqlserver和sqlserveragent服務(wù)是否是以域用戶身份啟動(dòng)并運(yùn)行的(.\administrator用戶也是可以的) 如果登錄用的是本地系統(tǒng)帳戶local,將不具備網(wǎng)絡(luò)功能,會(huì)產(chǎn)生以下錯(cuò)誤: 進(jìn)程未能連接到distributor '@server name' (如果您的服務(wù)器已經(jīng)用了sql server全文檢索服務(wù), 請不要修改mssqlserver和sqlserveragent服務(wù)的local啟動(dòng)。 會(huì)照成全文檢索服務(wù)不能用。請換另外一臺機(jī)器來做sql server 2000里復(fù)制中的分發(fā)服務(wù)器。) 修改服務(wù)啟動(dòng)的登錄用戶,需要重新啟動(dòng)mssqlserver和sqlserveragent服務(wù)才能生效 2、檢查相關(guān)的幾臺sql server服務(wù)器是否改過名稱(需要srvid=0的本地機(jī)器上srvname和datasource一樣) 在查詢分析器里執(zhí)行: use master select srvid,srvname,datasource from sysservers 如果沒有srvid=0或者srvid=0(也就是本機(jī)器)但srvname和datasource不一樣, 需要按如下方法修改: use master go -- 設(shè)置兩個(gè)變量 declare @serverproperty_servername varchar(100), @servername varchar(100) -- 取得windows nt 服務(wù)器和與指定的 sql server 實(shí)例關(guān)聯(lián)的實(shí)例信息 select @serverproperty_servername = convert(varchar(100), serverproperty('servername')) -- 返回運(yùn)行 microsoft sql server 的本地服務(wù)器名稱 select @servername = convert(varchar(100), @@servername) -- 顯示獲取的這兩個(gè)參數(shù) select @serverproperty_servername,@servername --如果@serverproperty_servername和@servername不同(因?yàn)槟愀倪^計(jì)算機(jī)名字),再運(yùn)行下面的 --刪除錯(cuò)誤的服務(wù)器名 exec sp_dropserver @server=@servername --添加正確的服務(wù)器名 exec sp_addserver @server=@serverproperty_servername, @local='local' 修改這項(xiàng)參數(shù),需要重新啟動(dòng)mssqlserver和sqlserveragent服務(wù)才能生效。 這樣一來就不會(huì)在創(chuàng)建復(fù)制的過程中出現(xiàn)18482、18483錯(cuò)誤了。 3、檢查sql server企業(yè)管理器里面相關(guān)的幾臺sql server注冊名是否和上面第二點(diǎn)里介紹的srvname一樣 不能用ip地址的注冊名。 (我們可以刪掉ip地址的注冊,新建以sql server管理員級別的用戶注冊的服務(wù)器名) 這樣一來就不會(huì)在創(chuàng)建復(fù)制的過程中出現(xiàn)14010、20084、18456、18482、18483錯(cuò)誤了。 4、檢查相關(guān)的幾臺sql server服務(wù)器網(wǎng)絡(luò)是否能夠正常訪問 如果ping主機(jī)ip地址可以,但ping主機(jī)名不通的時(shí)候,需要在 winnt\system32\drivers\etc\hosts (win2000) windows\system32\drivers\etc\hosts (win2003) 文件里寫入數(shù)據(jù)庫服務(wù)器ip地址和主機(jī)名的對應(yīng)關(guān)系。 例如: 127.0.0.1 localhost 192.168.0.35 oracledb oracledb 192.168.0.65 fengyu02 fengyu02 202.84.10.193 bj_db bj_db 或者在sql server客戶端網(wǎng)絡(luò)實(shí)用工具里建立別名,例如: 5、系統(tǒng)需要的擴(kuò)展存儲過程是否存在(如果不存在,需要恢復(fù)): sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstar.dll' go sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstar.dll' go sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstar.dll' go sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 接下來就可以用sql server企業(yè)管理器里[復(fù)制]- 右鍵選擇 -[配置發(fā)布、訂閱服務(wù)器和分發(fā)]的圖形界面來配置數(shù)據(jù)庫復(fù)制了。 下面是按順序列出配置復(fù)制的步驟: 1、建立發(fā)布和分發(fā)服務(wù)器 [歡迎使用配置發(fā)布和分發(fā)向?qū)-[選擇分發(fā)服務(wù)器]-[使"@servername"成為它自己的分發(fā)服務(wù)器,sql server將創(chuàng)建分發(fā)數(shù)據(jù)庫和日志] -[制定快照文件夾]- [自定義配置] - [否,使用下列的默認(rèn)配置] - [完成] 上述步驟完成后, 會(huì)在當(dāng)前"@servername" sql server數(shù)據(jù)庫里建立了一個(gè)distribion庫和 一個(gè)distributor_admin管理員級別的用戶(我們可以任意修改密碼)。 服務(wù)器上新增加了四個(gè)作業(yè): [ 代理程序歷史記錄清除: distribution ] [ 分發(fā)清除: distribution ] [ 復(fù)制代理程序檢查 ] [ 重新初始化存在數(shù)據(jù)驗(yàn)證失敗的訂閱 ] sql server企業(yè)管理器里多了一個(gè)復(fù)制監(jiān)視器, 當(dāng)前的這臺機(jī)器就可以發(fā)布、分發(fā)、訂閱了。 我們再次在sql server企業(yè)管理器里[復(fù)制]- 右鍵選擇 -[配置發(fā)布、訂閱服務(wù)器和分發(fā)] 我們可以在 [發(fā)布服務(wù)器和分發(fā)服務(wù)器的屬性] 窗口- [發(fā)布服務(wù)器] - [新增] - [確定] - [發(fā)布數(shù)據(jù)庫] - [事務(wù)]/[合并] - [確定] - [訂閱服務(wù)器] - [新增] - [確定] 把網(wǎng)絡(luò)上的其它sql server服務(wù)器添加成為發(fā)布或者訂閱服務(wù)器. 新增一臺發(fā)布服務(wù)器的選項(xiàng): 我這里新建立的jin001發(fā)布服務(wù)器是用管理員級別的數(shù)據(jù)庫用戶test連接的, 到發(fā)布服務(wù)器的管理鏈接要輸入密碼的可選框, 默認(rèn)的是選中的, 在新建的jin001發(fā)布服務(wù)器上建立和分發(fā)服務(wù)器fengyu/fengyu的鏈接的時(shí)需要輸入distributor_admin用戶的密碼。到發(fā)布服務(wù)器的管理鏈接要輸入密碼的可選框,也可以不選,也就是不需要密碼來建立發(fā)布到分發(fā)服務(wù)器的鏈接(這當(dāng)然欠缺安全,在測試環(huán)境下可以使用)。 2、新建立的網(wǎng)絡(luò)上另一臺發(fā)布服務(wù)器(例如jin001)選擇分發(fā)服務(wù)器 [歡迎使用配置發(fā)布和分發(fā)向?qū)-[選擇分發(fā)服務(wù)器] - 使用下列服務(wù)器(選定的服務(wù)器必須已配置為分發(fā)服務(wù)器) - [選定服務(wù)器](例如fengyu/fengyu) - [下一步] - [輸入分發(fā)服務(wù)器(例如fengyu/fengyu)的distributor_admin用戶的密碼兩次] - [下一步] - [自定義配置] - [否,使用下列的默認(rèn)配置] - [下一步] - [完成] - [確定] 建立一個(gè)數(shù)據(jù)庫復(fù)制發(fā)布的過程: [復(fù)制] - [發(fā)布內(nèi)容] - 右鍵選擇 - [新建發(fā)布] - [下一步] - [選擇發(fā)布數(shù)據(jù)庫] - [選中一個(gè)待發(fā)布的數(shù)據(jù)庫] - [下一步] - [選擇發(fā)布類型] - [事務(wù)發(fā)布]/[合并發(fā)布] - [下一步] - [指定訂閱服務(wù)器的類型] - [運(yùn)行sql server 2000的服務(wù)器] - [下一步] - [指定項(xiàng)目] - [在事務(wù)發(fā)布中只可以發(fā)布帶主鍵的表] - [選中一個(gè)有主鍵的待發(fā)布的表] -[在合并發(fā)布中會(huì)給表增加唯一性索引和 rowguidcol 屬性的唯一標(biāo)識符字段[rowguid],默認(rèn)值是newid()] (添加新列將: 導(dǎo)致不帶列列表的 insert 語句失敗,增加表的大小,增加生成第一個(gè)快照所要求的時(shí)間) -[選中一個(gè)待發(fā)布的表] - [下一步] - [選擇發(fā)布名稱和描述] - - [下一步] - [自定義發(fā)布的屬性] - [否,根據(jù)指定方式創(chuàng)建發(fā)布] - [下一步] - [完成] - [關(guān)閉] 發(fā)布屬性里有很多有用的選項(xiàng):設(shè)定訂閱到期(例如24小時(shí)) 設(shè)定發(fā)布表的項(xiàng)目屬性: 常規(guī)窗口可以指定發(fā)布目的表的名稱,可以跟原來的表名稱不一樣。 下圖是命令和快照窗口的欄目 ( sql server 數(shù)據(jù)庫復(fù)制技術(shù)實(shí)際上是用insert,update,delete操作在訂閱服務(wù)器上重做發(fā)布服務(wù)器上的事務(wù)操作 看文檔資料需要把發(fā)布數(shù)據(jù)庫設(shè)成完全恢復(fù)模式,事務(wù)才不會(huì)丟失 但我自己在測試中發(fā)現(xiàn)發(fā)布數(shù)據(jù)庫是簡單恢復(fù)模式下,每10秒生成一些大事務(wù),10分鐘后再收縮數(shù)據(jù)庫日志, 這期間發(fā)布和訂閱服務(wù)器上的作業(yè)都暫停,暫?;謴?fù)后并沒有丟失任何事務(wù)更改 ) 發(fā)布表可以做數(shù)據(jù)篩選,例如只選擇表里面的部分列: 例如只選擇表里某些符合條件的記錄, 我們可以手工編寫篩選的sql語句: 發(fā)布表的訂閱選項(xiàng),并可以建立強(qiáng)制訂閱: 成功建立了發(fā)布以后,發(fā)布服務(wù)器上新增加了一個(gè)作業(yè): [ 失效訂閱清除 ] 分發(fā)服務(wù)器上新增加了兩個(gè)作業(yè): [ jin001-dack-dack-5 ] 類型[ repl快照 ] [ jin001-dack-3 ] 類型[ repl日志讀取器 ] 上面藍(lán)色字的名稱會(huì)根據(jù)發(fā)布服務(wù)器名,發(fā)布名及第幾次發(fā)布而使用不同的編號 repl快照作業(yè)是sql server復(fù)制的前提條件,它會(huì)先把發(fā)布的表結(jié)構(gòu),數(shù)據(jù),索引,約束等生成到發(fā)布服務(wù)器的os目錄下文件 (當(dāng)有訂閱的時(shí)候才會(huì)生成, 當(dāng)訂閱請求初始化或者按照某個(gè)時(shí)間表調(diào)度生成) repl日志讀取器在事務(wù)復(fù)制的時(shí)候是一直處于運(yùn)行狀態(tài)。(在合并復(fù)制的時(shí)候可以根據(jù)調(diào)度的時(shí)間表來運(yùn)行) 建立一個(gè)數(shù)據(jù)庫復(fù)制訂閱的過程: [復(fù)制] - [訂閱] - 右鍵選擇 - [新建請求訂閱] - [下一步] - [查找發(fā)布] - [查看已注冊服務(wù)器所做的發(fā)布] - [下一步] - [選擇發(fā)布] - [選中已經(jīng)建立發(fā)布服務(wù)器上的數(shù)據(jù)庫發(fā)布名] - [下一步] - [指定同步代理程序登錄] - [當(dāng)代理程序連接到代理服務(wù)器時(shí):使用sql server身份驗(yàn)證] (輸入發(fā)布服務(wù)器上distributor_admin用戶名和密碼) - [下一步] - [選擇目的數(shù)據(jù)庫] - [選擇在其中創(chuàng)建訂閱的數(shù)據(jù)庫名]/[也可以新建一個(gè)庫名] - [下一步] - [允許匿名訂閱] - [是,生成匿名訂閱] - [下一步] - [初始化訂閱] - [是,初始化架構(gòu)和數(shù)據(jù)] - [下一步] - [快照傳送] - [使用該發(fā)布的默認(rèn)快照文件夾中的快照文件] (訂閱服務(wù)器要能訪問發(fā)布服務(wù)器的repldata文件夾,如果有問題,可以手工設(shè)置網(wǎng)絡(luò)共享及共享權(quán)限) - [下一步] - [快照傳送] - [使用該發(fā)布的默認(rèn)快照文件夾中的快照文件] - [下一步] - [設(shè)置分發(fā)代理程序調(diào)度] - [使用下列調(diào)度] - [更改] - [例如每五分鐘調(diào)度一次] - [下一步] - [啟動(dòng)要求的服務(wù)] - [該訂閱要求在發(fā)布服務(wù)器上運(yùn)行sqlserveragent服務(wù)] - [下一步] - [完成] - [確定] 成功建立了訂閱后,訂閱服務(wù)器上新增加了一個(gè)類別是[repl-分發(fā)]作業(yè)(合并復(fù)制的時(shí)候類別是[repl-合并]) 它會(huì)按照我們給的時(shí)間調(diào)度表運(yùn)行數(shù)據(jù)庫同步復(fù)制的作業(yè)。 3、sql server復(fù)制配置好后, 可能出現(xiàn)異常情況的實(shí)驗(yàn)日志: 1.發(fā)布服務(wù)器斷網(wǎng),sql server服務(wù)關(guān)閉,重啟動(dòng),關(guān)機(jī)的時(shí)候,對已經(jīng)設(shè)置好的復(fù)制沒有多大影響 中斷期間,分發(fā)和訂閱都接收到?jīng)]有復(fù)制的事務(wù)信息 2.分發(fā)服務(wù)器斷網(wǎng),sql server服務(wù)關(guān)閉,重啟動(dòng),關(guān)機(jī)的時(shí)候,對已經(jīng)設(shè)置好的復(fù)制有一些影響 中斷期間,發(fā)布服務(wù)器的事務(wù)排隊(duì)堆積起來 (如果設(shè)置了較長時(shí)間才刪除過期訂閱的選項(xiàng), 繁忙發(fā)布數(shù)據(jù)庫的事務(wù)日志可能會(huì)較快速膨脹), 訂閱服務(wù)器會(huì)因?yàn)樵L問不到發(fā)布服務(wù)器,反復(fù)重試 我們可以設(shè)置重試次數(shù)和重試的時(shí)間間隔(最大的重試次數(shù)是9999, 如果每分鐘重試一次,可以支持約6.9天不出錯(cuò)) 分發(fā)服務(wù)器sql server服務(wù)啟動(dòng),網(wǎng)絡(luò)接通以后,發(fā)布服務(wù)器上的堆積作業(yè)將按時(shí)間順序作用到訂閱機(jī)器上: 會(huì)需要一個(gè)比較長的時(shí)間(實(shí)際上是生成所有事務(wù)的insert,update,delete語句,在訂閱服務(wù)器上去執(zhí)行) 我們在普通的pc機(jī)上實(shí)驗(yàn)的58個(gè)事務(wù)100228個(gè)命令執(zhí)行花了7分28秒. 3.訂閱服務(wù)器斷網(wǎng),sql server服務(wù)關(guān)閉,重啟動(dòng),關(guān)機(jī)的時(shí)候,對已經(jīng)設(shè)置好的復(fù)制影響比較大,可能需要重新初試化 我們實(shí)驗(yàn)環(huán)境(訂閱服務(wù)器)從18:46分意外停機(jī)以, 第二天8:40分重啟動(dòng)后, 已經(jīng)設(shè)好的復(fù)制在8:40分以后又開始正常運(yùn)行了, 發(fā)布服務(wù)器上的堆積作業(yè)將按時(shí)間順序作用到訂閱機(jī)器上, 但復(fù)制管理器里出現(xiàn)快照的錯(cuò)誤提示, 快照可能需要重新初試化,復(fù)制可能需要重新啟動(dòng).(我們實(shí)驗(yàn)環(huán)境的機(jī)器并沒有進(jìn)行快照初試化,復(fù)制仍然是成功運(yùn)行的) 4、刪除已經(jīng)建好的發(fā)布和定閱可以直接用delete刪除按鈕 我們最好總是按先刪定閱,再刪發(fā)布,最后禁用發(fā)布的順序來操作。 如果要徹底刪去sql server上面的復(fù)制設(shè)置, 可以這樣操作: [復(fù)制] - 右鍵選擇 [禁用發(fā)布] - [歡迎使用禁用發(fā)布和分發(fā)向?qū) - [下一步] - [禁用發(fā)布] - [要在"@servername"上禁用發(fā)布] - [下一步] - [完成禁用發(fā)布和分發(fā)向?qū) - [完成] 我們也可以用t-sql命令來完成復(fù)制中發(fā)布及訂閱的創(chuàng)建和刪除, 選中已經(jīng)設(shè)好的發(fā)布和訂閱, 按屬標(biāo)右鍵可以[生成sql腳本]。(這里就不詳細(xì)講了, 后面推薦的網(wǎng)站內(nèi)有比較詳細(xì)的內(nèi)容) 當(dāng)你試圖刪除或者變更一個(gè)table時(shí),出現(xiàn)以下錯(cuò)誤 server: msg 3724, level 16, state 2, line 1 cannot drop the table 'object_name' because it is being used for replication. 比較典型的情況是該table曾經(jīng)用于復(fù)制,但是后來又刪除了復(fù)制。 處理辦法: select * from sysobjects where replinfo '0' sp_configure 'allow updates', 1 go reconfigure with override go begin transaction update sysobjects set replinfo = '0' where replinfo '0' commit transaction go rollback transaction go sp_configure 'allow updates', 0 go reconfigure with override go

如何實(shí)現(xiàn)兩臺sqlserver數(shù)據(jù)庫的實(shí)時(shí)同步

1. SQLSERVER服務(wù)器上面安裝oracle客戶端,配置服務(wù)命名(假設(shè)為 test)

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)度存儲過程,存儲過程使用類似的語句將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表名.

sqlserver不同數(shù)據(jù)庫怎么讓數(shù)據(jù)實(shí)時(shí)同步?

可以使用數(shù)據(jù)庫比較與同步工具DBSync,具體做法:先建立一個(gè)任務(wù):以A為同步之源,以B為同步之目標(biāo),同步方式設(shè)置為增量同步,以后,只要A發(fā)生增刪改,就會(huì)同步更新至B。

如何實(shí)現(xiàn)sql數(shù)據(jù)庫異地同步

只能是二臺數(shù)據(jù)庫之間進(jìn)行同步,而不能同步MDF,LDF文件。

因?yàn)镸DF,LDF這些文件是數(shù)據(jù)庫文件,同時(shí)在SQLSERVER進(jìn)程中使用,你沒辦法進(jìn)行復(fù)制操作。

數(shù)據(jù)庫mysql里的數(shù)據(jù) 與sqlserver里的數(shù)據(jù)同步

我將兩個(gè)思路提供給你:

1、首先,你要有一個(gè)業(yè)務(wù)層和一個(gè)數(shù)據(jù)訪問接口層和數(shù)據(jù)層(后兩層可以合并),業(yè)務(wù)層中有數(shù)據(jù)操作時(shí)同時(shí)操作其它兩層的數(shù)據(jù),只有同時(shí)成功了才提交事務(wù)。這樣可以確保數(shù)據(jù)一致。

2、設(shè)計(jì)和實(shí)現(xiàn)一個(gè)數(shù)據(jù)同步工具,我實(shí)現(xiàn)了一個(gè)SQL

Server和Oracle之間數(shù)據(jù)同步的工具,利用一個(gè)定義表(主鍵,字段,表名,同步標(biāo)識等)和DataSet做中轉(zhuǎn),能夠?qū)蓚€(gè)數(shù)據(jù)庫中需要同步的表同步成相同的內(nèi)容,你可以根據(jù)要求指定同步周期。


分享題目:sqlserver數(shù)據(jù)庫同步的簡單介紹
本文鏈接:http://weahome.cn/article/hddejj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部