Generally SSMS wizards are quite efficient but the replication wizard, which allows me to create a replication on a remote server from the publisher/distributor server is failing with techno speak that I cannot reference.
Peer-to-peer publications only support a '@sync_type' parameter value of 'replication support only', 'initialize with backup' or 'initialize from lsn'. Changed database context to 'sourceServer'. (Microsoft SQL Server, Error: 21679)
Is the above saying I need to physically create a backup of the snapshot and restore it to the target database? Or is it saying the permissions between the two are whacked? Or that lsn thing... it all points to a snapshot that is required for initialization.
Why is the wizard NOT creating the snapshot for initialization and INSTEAD, giving the error listed above.
Steps to reproduce:
Initialize Distributor at source server
Create publication
On remote server create a target database (empty)
On the source server, right click and run the New Subscriptions wizard - reference the publication, run push (that's the default), add remote server as subscriber - reference the target database on that server, provide a service account with SA on both remote
and local servers (source and target),
accept SYNC defaults (Run Continuously),
Initialize Immediately, (says snapshow agent must run and generate a snapshot of the publication before the subscriptions can be initialized) [this is probably the catch - maybe the wizard is not smart enough to do this is attempting to subliminally hypnotize
the reader into knowing it is a failure as a wizard??? dunno about this one] -
Click Next to get to the Wizard Actions which says "Create the Subsciption(s)" and review the results: Click Finish to perform the following actions:
Create subscription(s).
Create a subscription to publication 'Members' from Publisher 'SourceServer'.
Create subscriptions at the following
Subscriber(s): remote server Subscription database:
MemberSubscription Agent location:
Distributor Agent schedule: Run continuously
Agent process account: domain\serviceaccount
Connection to Distributor: Impersonate 'domain\serviceaccount'
Connection to Subscriber: Impersonate 'domain\serviceaccount'
Initialize: Immediately
And yes, it looks to me like there is a step missing - why doesn't it create a snapshot to initialize the subscription. Here's why I ask. If two years ago, I create a snapshot and then I initialize the target database with that snapshot, it most likely is
not the same fields and definitely not necessarily the same data that is currently in the database.
How will the subscription know that all that stuff is missing? I suspect it won't so my expectation here is that the wizard, takes the snapshot and applies it. But looking here, I don't see that in the list. Ditto on this discrepancy even if the snapshot
is one minute behind the database as this information changes constantly. [otherwise why create a subscription if the information is static]
So where am I going wrong that this step is not happenning? Says it started the snapshot agent successfully even though it failed to create the subscription. Error is the same regardless of whether it is initiated at the source server or at the target server
(push or pull).