|
|
|
Forum Newbie
      
Group: General Forum Members
Last Login: Sunday, November 06, 2011 9:39 PM
Points: 5,
Visits: 25
|
|
I have my databases running on SQL Server 2005.
I have Transactional replication setup between 2 databases - source being my transaction db and the target being the reporting database.
I am going to add a new article to the existing publication, and my question over here is when I add the the new article do I have to generate a new snapshot and then reintialize the subscription.
And also when I am generating the new snapshot will I be able to access both the source and the target databases.
Thank you all in advance.
|
|
|
|
|
Ten Centuries
      
Group: General Forum Members
Last Login: Monday, February 18, 2013 3:46 AM
Points: 1,422,
Visits: 1,883
|
|
Adding/Dropping articles from existing publications: http://technet.microsoft.com/en-us/library/ms152493(SQL.90).aspx
When you are generating the snapshot you will be able to access both the publisher and subscriber - from what I remember the snapshot agent takes a schema lock on the tables for which the snapshot is being generated and if the snapshot generation process takes a very long time then you might see blocking issues on the publisher.
|
|
|
|
|
Forum Newbie
      
Group: General Forum Members
Last Login: Sunday, November 06, 2011 9:39 PM
Points: 5,
Visits: 25
|
|
Thank you very much.
So, will it generate snapshot only on the new article or all the articles which are getting replicated.
Thank you again for the reply.
|
|
|
|
|
Ten Centuries
      
Group: General Forum Members
Last Login: Monday, February 18, 2013 3:46 AM
Points: 1,422,
Visits: 1,883
|
|
The snapshot will be generated for all articles being replicated (i.e. all the existing articles plus any new articles being added to the publication) - however the distribution agent will only create the new article(s) and copy in the data for the new article(s).
If you check on replication monitor - in the Snapshot Agent tab you'll see the snapshot for all articles being generated and if you go to the distribution agent (the "Distributor To Subscriber History" tab) you'll see that only the schema and data for the new articles are applied.
|
|
|
|
|
Ten Centuries
      
Group: General Forum Members
Last Login: Today @ 6:28 AM
Points: 1,125,
Visits: 14,511
|
|
If you add the article using scripts and then generate the snapshot, the snapshot agent should only add the new articles and limit the impact to both the publisher and subscriber to just the new article.
http://support.microsoft.com/kb/830210
----------------------------
exec sp_addarticle @publication = N'', @article = N'', @source_owner = N'dbo', @source_object = N'', @destination_table = N'', @type = N'logbased', @creation_script = null, @description = null, @pre_creation_cmd = N'drop', @schema_option = 0x00000000000000F3, @status = 16, @vertical_partition = N'false', @ins_cmd = N'CALL sp_MSins_<table>', @del_cmd = N'CALL sp_MSdel_<table>', @upd_cmd = N'MCALL sp_MSupd_<table>', @filter = null, @sync_object = null GO
exec sp_addsubscription @publication = N'', @subscriber = N'', @destination_db = N'', @subscription_type = N'Push', @sync_type = N'automatic', @article = N'all', @update_mode = N'read only', @frequency_type = 64, @frequency_interval = 1, @frequency_relative_interval = 1, @frequency_recurrence_factor = 0, @frequency_subday = 4, @frequency_subday_interval = 5, @active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 0, @active_end_date = 0, @offloadagent = 0, @dts_package_location = N'Distributor' GO
|
|
|
|