使用Sqlserver事務(wù)發(fā)布實(shí)現(xiàn)數(shù)據(jù)同步(sql2008)_Mssql數(shù)據(jù)庫(kù)教程
推薦:sql2005創(chuàng)建遠(yuǎn)程登錄帳戶(hù)的sql語(yǔ)句有時(shí)候我們需要?jiǎng)?chuàng)建遠(yuǎn)程登錄賬號(hào),這里簡(jiǎn)單分享下,方便需要的朋友
事務(wù)的功能在sqlserver中由來(lái)已久,因?yàn)樽罱谧鲆粋(gè)數(shù)據(jù)同步方案,所以有機(jī)會(huì)再次研究一下它以及快照等,發(fā)現(xiàn)還是有很多不錯(cuò)的功能和改進(jìn)的。這里以sqlserver2008的事務(wù)發(fā)布功能為例,對(duì)發(fā)布訂閱的方式簡(jiǎn)要介紹一下操作流程,一方面做個(gè)總結(jié)備份,一方面與大家進(jìn)行一下分享和交流。費(fèi)話(huà)就不多說(shuō)了,進(jìn)入一下今天的正題:)
這里要說(shuō)明一下環(huán)境:首先我在本地局域網(wǎng)內(nèi)有兩臺(tái)安裝有sqlserver2008的機(jī)器(注意:已發(fā)布的快照版本無(wú)法向老版本數(shù)據(jù)庫(kù)兼容,意味著2008下創(chuàng)建的事務(wù)或快照發(fā)布,無(wú)法被sqlserver2005訂閱)。當(dāng)然這兩臺(tái)機(jī)器要放在同一個(gè)網(wǎng)段,一方面出現(xiàn)性能和安全性考慮,另一方面是我目前還沒(méi)有找到跨不同網(wǎng)段的快照應(yīng)用方案(可行性的那種)。
好了,這里我以我們產(chǎn)品數(shù)據(jù)庫(kù)為準(zhǔn)來(lái)介紹一下如何通過(guò)發(fā)布訂閱的方式來(lái)進(jìn)行數(shù)據(jù)同步。
首先,在要發(fā)布的數(shù)據(jù)庫(kù)上創(chuàng)建一個(gè)我們的產(chǎn)品數(shù)據(jù)庫(kù)(這里叫做dnt_new),然后在該數(shù)據(jù)庫(kù)實(shí)例的左側(cè)導(dǎo)航的“復(fù)制”--“本地發(fā)布”上擊右鍵,然后選擇“新建發(fā)布”,如下:
這樣,系統(tǒng)就會(huì)啟動(dòng)‘發(fā)布向?qū)?來(lái)引導(dǎo)大家,這里我們?cè)跉g迎界面下點(diǎn)擊"下一步”,然后在當(dāng)前窗口中選擇要發(fā)布的數(shù)據(jù)庫(kù),如下:
點(diǎn)擊下一步,然后在接下來(lái)的窗口中選擇“事務(wù)發(fā)布”,如下圖:
然后點(diǎn)擊下一步,選擇要同步的數(shù)據(jù)對(duì)象(數(shù)據(jù)表,存儲(chǔ)過(guò)程,自定義函數(shù)等),如下:
然后就是“項(xiàng)目問(wèn)題窗口”,因?yàn)橹耙延胐bo身份登陸,所以這里只要點(diǎn)擊下一步即可,如下圖:
這里可以通過(guò)“添加”方式來(lái)過(guò)濾要同步的數(shù)據(jù)信息,因?yàn)橐鋈頂?shù)據(jù)同步,所以這里就不做設(shè)置了,感興趣的朋友可以自己研究一下,這里接著點(diǎn)擊下一步,如下:
然后在‘代理安全性'窗口中,點(diǎn)擊“安全設(shè)置”按鈕:
在彈出的‘安全設(shè)置'子窗口中設(shè)置如下信息,并點(diǎn)擊‘確定'按鈕:
然后點(diǎn)擊下一步按鈕:

選擇“創(chuàng)建發(fā)布”復(fù)選框,然后點(diǎn)擊下一步,這時(shí)向?qū)?huì)讓您輸入“發(fā)布名稱(chēng)”,這里命名為“dnt_new_snap”:
點(diǎn)擊“完成按鈕”,這里系統(tǒng)就開(kāi)始根據(jù)之前收集的信息來(lái)創(chuàng)建該發(fā)布對(duì)象信息了,如下:
到這里,‘創(chuàng)建發(fā)布'的工作就完成了。下面介紹一下創(chuàng)建訂閱的流程。在另一個(gè)機(jī)器的sqlserver實(shí)例上,打開(kāi)該實(shí)例并使用“復(fù)制”—“新建訂閱”,如下圖:
這時(shí)系統(tǒng)就會(huì)啟動(dòng)“新建訂閱”向?qū)�,點(diǎn)擊下一步,并在“發(fā)布”窗口中的“發(fā)布服務(wù)器”下拉框中選擇“查打發(fā)布sqlserver服務(wù)器”項(xiàng),如下:
然后在彈出窗口中選擇之前‘創(chuàng)建發(fā)布時(shí)所使用的數(shù)據(jù)庫(kù)實(shí)例'并進(jìn)行驗(yàn)進(jìn)登陸,這時(shí),發(fā)布服務(wù)器的信息就會(huì)出現(xiàn)在下方的列表框中:
選擇之前我們創(chuàng)建的那個(gè)發(fā)布對(duì)象“dnt_new_snap”,接著點(diǎn)擊下一步:
在分發(fā)代理位置窗口中,選擇“在分布服務(wù)器上運(yùn)行所有代理”,然后點(diǎn)擊下一步,然后在“訂閱服務(wù)器”窗口中的訂閱數(shù)據(jù)庫(kù)列表框中選擇一下要同步的訂閱數(shù)據(jù)庫(kù)名稱(chēng)(可新建):
點(diǎn)擊下一步,然后在‘分發(fā)代理安全性'窗口中,點(diǎn)擊列表框中的‘…'來(lái)設(shè)置安裝性,并做如下設(shè)置(注意紅框部分):
然后點(diǎn)擊“確定”按鈕,之后在向?qū)宵c(diǎn)擊“下一步”按鈕,這時(shí)系統(tǒng)就會(huì)顯示“代理計(jì)劃執(zhí)行方式”窗口,選擇“連續(xù)運(yùn)行”:
點(diǎn)擊下一步,在窗口中選擇“立即執(zhí)行”:
完成了這一步,點(diǎn)擊下一步按鈕,然后就可以創(chuàng)建該訂閱對(duì)象了,如果一切運(yùn)行正常,sqlserver就會(huì)從‘發(fā)布服務(wù)器'那邊,將之前指定的數(shù)據(jù)表和存儲(chǔ)過(guò)程等同步到當(dāng)前的‘訂閱數(shù)據(jù)庫(kù)'中了。
這時(shí)我們可以在源數(shù)據(jù)庫(kù)(發(fā)布服務(wù)器)上的表中添加或修改指定表數(shù)據(jù)信息,在等待1-3秒之后,所做的添加和修改就會(huì)同步到‘訂閱數(shù)據(jù)庫(kù)'上的相應(yīng)表中�?磥�(lái)目的是達(dá)到了,呵呵。
好了,今天的內(nèi)容就到這里了。
注:本文中的兩臺(tái)機(jī)器必定是可以使用sqlserver客戶(hù)端互聯(lián)(在sqlserver studio中設(shè)置'允許遠(yuǎn)程鏈接',同時(shí)要設(shè)置相應(yīng)的ip地址,以及在配置管理器中開(kāi)啟tcp/ip協(xié)議即可)
作者: daizhj, 代震軍
分享:sql里將重復(fù)行數(shù)據(jù)合并為一行數(shù)據(jù)使用逗號(hào)進(jìn)行分隔sql里將重復(fù)行數(shù)據(jù)合并為一行,將多行fieldname字段的內(nèi)容串聯(lián)起來(lái),用逗號(hào)分隔,接下來(lái)為大家介紹下詳細(xì)的實(shí)現(xiàn)sql語(yǔ)句,希望對(duì)你有所幫助
- sql 語(yǔ)句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個(gè)方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無(wú)法查看數(shù)據(jù)庫(kù),提示 無(wú)法為該請(qǐng)求檢索數(shù)據(jù) 錯(cuò)誤916解決方法
- SQLServer日志清空語(yǔ)句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類(lèi)似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲(chǔ)過(guò)程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫(kù)教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫(kù)教程推薦
- mdf文件和ldf文件導(dǎo)入到sql server 2005實(shí)現(xiàn)語(yǔ)句
- sql server 還原數(shù)據(jù)庫(kù)時(shí)提示數(shù)據(jù)庫(kù)正在使用,無(wú)法進(jìn)行操作的解決方法
- 解讀VB實(shí)現(xiàn)SQL Server 2000存儲(chǔ)過(guò)程調(diào)用
- 詳解SQL Server2000安全管理機(jī)制
- 快速清除SQLServer日志的兩種方法
- 探討SQL Server 2005的評(píng)價(jià)函數(shù)
- 注意:在SQL SERVER中使用NChar、NVarchar和NText
- 教你2種刪除SQL SERVER數(shù)據(jù)庫(kù)日志方法
- SQL新手教程:SQL SELECT 語(yǔ)句使用方法
- 談SQL Server 壓縮日志及數(shù)據(jù)庫(kù)文件大小
猜你也喜歡看這些
- MySQL中優(yōu)化sql語(yǔ)句查詢(xún)常用的30種方法
- mysql重裝后出現(xiàn)亂碼設(shè)置為utf8可解決
- MySQL筆記之子查詢(xún)使用介紹
- mysql 定時(shí)更新表字段列的值狀態(tài)
- 網(wǎng)站模板:如何捕獲和記錄SQL Server中發(fā)生的死鎖
- 遠(yuǎn)程連接mysql數(shù)據(jù)庫(kù)注意點(diǎn)記錄
- SQL查詢(xún)超時(shí)的設(shè)置方法(關(guān)于timeout的處理)
- mysql與mysqli的區(qū)別與用法
- mysql 導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)以及函數(shù)、存儲(chǔ)過(guò)程的介紹
- mysql隨機(jī)查詢(xún)的優(yōu)化
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索使用Sqlserver事務(wù)發(fā)布實(shí)現(xiàn)數(shù)據(jù)同步(sql2008)
- 教程說(shuō)明:
Mssql數(shù)據(jù)庫(kù)教程-使用Sqlserver事務(wù)發(fā)布實(shí)現(xiàn)數(shù)據(jù)同步(sql2008)
。