日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQLServer復(fù)制用備份文件初始化訂閱

下面為您介紹一個(gè)SQL Server復(fù)制用備份文件初始化訂閱的方法,該方法供您參考,如果您遇到過類似方面的問題,不妨一看。

這是一個(gè)讓我覺得頭疼的blog記錄,弄了半天我還是很暈,其實(shí)也許結(jié)果就是我折騰的那個(gè)樣子,但我折騰出來的結(jié)果感覺實(shí)在是覺得有點(diǎn)麻煩。默認(rèn)創(chuàng)建的訂閱都是用快照初始化的,但是也可以不使用快照來初始化訂閱,而使用數(shù)據(jù)庫備份來初始化。至于原因msdn有如下描述對(duì)使用這種初使化的方式:

在某些方案中,例如涉及大型初始數(shù)據(jù)集的方案中,***用其他方法初始化訂閱。初始化訂閱服務(wù)器的其他方法包括:

指定備份。還原訂閱服務(wù)器上的備份,然后分發(fā)代理將SQL Server復(fù)制任何所需的復(fù)制元數(shù)據(jù)和系統(tǒng)過程。使用備份進(jìn)行初始化是向訂閱服務(wù)器傳遞數(shù)據(jù)最快的方法,而且也很方便,因?yàn)槿绻趩⒂冒l(fā)布以使用備份進(jìn)行初始化之后取得備份,則可以使用任何最近的備份。

我的理解就是當(dāng)在SQL Server復(fù)制中,有需要初始化大型的訂閱數(shù)據(jù)庫的時(shí)候,就不要使用快照模式讓發(fā)布數(shù)據(jù)庫來自動(dòng)初始化訂閱數(shù)據(jù)庫的數(shù)據(jù)和架構(gòu),用備份還原的方法,先將發(fā)布數(shù)據(jù)庫還原到訂閱服務(wù)器上,然后再進(jìn)行事務(wù)復(fù)制這樣就只復(fù)制增量,而不用快照進(jìn)行初始化SQL Server復(fù)制了。但是使用這種復(fù)制讓人覺得有個(gè)麻煩的地方,就是當(dāng)發(fā)布數(shù)據(jù)庫的架構(gòu)發(fā)生了改變的時(shí)候,比如多添了表或者存儲(chǔ)過程視圖等的時(shí)候,如果又想在發(fā)布中包含這些添加的新項(xiàng),就都得在訂閱服務(wù)器上再恢復(fù)一遍***的備份,還得在發(fā)布服務(wù)器上執(zhí)一遍初始化腳本,反正覺得挺麻煩的,如果是用快照的話,對(duì)數(shù)據(jù)架構(gòu)的如上的改變,只需要生成***的快照(初始化一下訂閱)即可。也許是我弄的不對(duì)吧,我自己目前也不太清楚,反正我試了半天,如果想用備份初始化訂閱就得主要步驟就得按如下的執(zhí)行:

 
 
 
  1. exec sp_addsubscription 
  2.     @publication = N'publicationname',
  3.     @subscriber ='computername\sqlserverinstancename',
  4.     @destination_db = N'subscription_database_name',
  5.     @subscription_type = N'Push',
  6.     @sync_type = N'initialize with backup',
  7.     @article = N'all',
  8.     @update_mode = N'read only',
  9.     @subscriber_type = 0,
  10.     @backupdevicetype='disk',
  11.     @backupdevicename='g:\reptest\t.bak(backupfilepath)',
  12.     @frequency_type = 1

1,先在發(fā)布屬性中的訂閱選項(xiàng)中,更改允許從備份文件初始化,默認(rèn)的是不允許。(創(chuàng)建好發(fā)布修改即可,以后不用執(zhí)行)
2,對(duì)發(fā)布數(shù)據(jù)庫備份,然后在訂閱服務(wù)器上恢復(fù)這個(gè)備份
3,在發(fā)布數(shù)據(jù)庫中執(zhí)行如下的腳本,具體參數(shù)參見聯(lián)機(jī)文檔關(guān)于存儲(chǔ)過程sp_addsubscription的說明(每執(zhí)行一次第2步,也就是每次新備份了一次發(fā)布數(shù)據(jù)庫并在訂閱服務(wù)器上恢復(fù)了它,就要執(zhí)行一次這個(gè)腳本,依我的測試如果不執(zhí)行如下的腳本,只進(jìn)行了備份恢復(fù),再運(yùn)行訂閱的時(shí)候就會(huì)出錯(cuò),當(dāng)然這也可能跟具體的情況有關(guān)),用備份文件進(jìn)行初始化的訂閱只能使用如下腳本來創(chuàng)建跟初始化:

如果是***次運(yùn)行這個(gè)腳本,執(zhí)行完之后創(chuàng)建的訂閱是運(yùn)行在sqlserver agent的啟動(dòng)賬戶下的,如果有必要需要修改成相應(yīng)的代理運(yùn)行賬戶來執(zhí)行訂閱同步。

另外整個(gè)初始化過程可參見sqlserver聯(lián)機(jī)叢書
How to: Initialize a Transactional Subscriber from a Backup (Replication Transact-SQL Programming)
初始化事務(wù)訂閱(不使用快照)


網(wǎng)頁標(biāo)題:SQLServer復(fù)制用備份文件初始化訂閱
網(wǎng)站網(wǎng)址:http://www.5511xx.com/article/cdgpdpo.html