Re: Forcing SQL Express to synchronize
- From: "Hilary Cotter" <hilary.cotter@xxxxxxxxx>
- Date: Tue, 29 Nov 2005 21:49:24 -0500
This almost always means a permissions problem. From what it looks like you
are connecting from your subscriber to c:\Program files\... on your
publisher, or at least it should be your publisher. Make sure when you
configured your distributor that your snapshot location was defined as a
share. If not you can go back and fix it by right clicking on your
replication folder and selecting distributor properties.Select the
Publishers node, and for your publisher select the browse button to the
right of your publisher and in the default snapshot folder make it a share.
For your second question, the reason you most frequently get this message is
because the snapshot has not being generated for this publication.
--
Hilary Cotter
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
"RSH" <way_beyond_oops@xxxxxxxxx> wrote in message
news:Olcv3AT9FHA.636@xxxxxxxxxxxxxxxxxxxxxxx
> Hilary,
>
> Thanks for your reply.
>
> Question 1:
>
> I set up a Pull subscription scenerio and on the SQLServer Express
> instance when I run WSM I get the following error:
> "The Schema script 'Accrual_2.sch' could not be propogated to the
> Subscriber."
> "The process could not read the file 'C:\Program Files...' due to OS Error
> 3"
>
> That directory does not exist from the "unc\" part of the path so I am
> assuming that a snapshot hasn't been created. If I am correct how do I
> generate a snapshot in SQL Express? Or is it created on the SQL Server
> instance and copied over?
>
>
> Question 2:
>
>
> The VB Code below is my quick attempt at using the Active X control. The
> code generates the following error: "The subscription to publication
> 'TestSub1' has expired or does not exist" which is not right...it does in
> fact exist as illustrated in my screenshot...what am I missing here?
>
> Option Explicit
> --------------------------------------------------------------
> ' Add Reference Microsoft SQL Distribution Control 8.0
>
> Private mobjDistr As SQLDISTXLib.SQLDistribution
>
> Private Sub main()
> Set mobjDistr = New SQLDISTXLib.SQLDistribution
>
> On Error GoTo Errhandler
>
> With mobjDistr
> 'Set up the Publisher
> .Publisher = "VIRTUAL1"
> .PublisherDatabase = "00010101"
> .Publication = "TPTestSub1"
> .PublisherSecurityMode = NT_AUTHENTICATION
>
> 'Set up the Subscriber.
> .Subscriber = "PARENTVM\TPSVCCTR01"
> .SubscriberDatabase = "00010101"
> .SubscriberDatasourceType = SQL_SERVER
> .SubscriberSecurityMode = DB_AUTHENTICATION
> .SubscriberLogin = "V1"
> .SubscriberPassword = "pw"
>
> 'Set up the Subscription.
> .SubscriptionType = PULL
> .SynchronizationType = AUTOMATIC
>
> 'Synchronize the data.
> .Initialize
> .Run
> .Terminate
>
> MsgBox "Complete"
>
> End With
>
> Exit Sub
>
> Errhandler:
> MsgBox Error
>
> End Sub
> --------------------------------------------------------------
>
> Thanks a ton for your help!
> RSH
>
>
> "Hilary Cotter" <hilary.cotter@xxxxxxxxx> wrote in message
> news:ecjk%23rR9FHA.1184@xxxxxxxxxxxxxxxxxxxxxxx
>>I would advise you to use a pull subscription and use the activeX controls
>>(you can use the SQL 2005 activeX control with VB6 - use set
>>test=CreateObject("SQLDistribution.90.SQLDistribution")
>> ), or use WSM for that.
>>
>> You want to use a pull as it has a lower impact on the publisher and you
>> can run it from the subscriber which is especially important if your
>> publisher is offline from time to time.
>>
>> For WSM go to Start, All Programs, Accessories and select Synchronize.
>> Click on MS SQL Server and select Properties to select your publication
>> and set subscription properties.
>>
>> --
>> Hilary Cotter
>> Looking for a SQL Server replication book?
>> http://www.nwsu.com/0974973602.html
>>
>> Looking for a FAQ on Indexing Services/SQL FTS
>> http://www.indexserverfaq.com
>>
>> "RSH" <way_beyond_oops@xxxxxxxxx> wrote in message
>> news:O5%230v1Q9FHA.3044@xxxxxxxxxxxxxxxxxxxxxxx
>>>I have a situation where I have SQL Server 2005 as my
>>>Publisher/Distributor and I have it setup to run Push Merge Replication.
>>>The subscriber is an instance of SQL Server Express. Obviously SQL
>>>Server Express doesn't have the means to force synchronization. I do
>>>have it setup at the moment to run Continiously but this will definitely
>>>be resource intensive running Merge Replication on a 1000 or so
>>>databases...so I would like to be able to set it up as Run on Demand and
>>>force the synchronization from the application. I have seen BOL but that
>>>RMO code is all in .Net, I am programming in VB6...and furthermore it
>>>looks like I have to use a Pull Subscription in order to code for
>>>RMO...is that correct?
>>>
>>> How should I go about setting this up for optimum performance?
>>>
>>> Thanks!
>>> RSH
>>>
>>
>>
>
>
.
- References:
- Forcing SQL Express to synchronize
- From: RSH
- Re: Forcing SQL Express to synchronize
- From: Hilary Cotter
- Re: Forcing SQL Express to synchronize
- From: RSH
- Forcing SQL Express to synchronize
- Prev by Date: Re: problem with updating identity in transactional replication
- Next by Date: Re: Mirroring Vs Replication
- Previous by thread: Re: Forcing SQL Express to synchronize
- Next by thread: Re: Two Way Transactional
- Index(es):