Transation replication with updateable subscribers
- From: jueberro <jueberro@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Sun, 26 Aug 2007 11:04:00 -0700
I have a main database that I need to distribute a copy of to another server
for use by anotherb department to relieve load on the database server. Bothg
need to be except replicas at all times.
The database is currently hosted on a SQL Server 2005 Standard edition 64Bit
database server. The Subscriber will be a SQL server 2000 std edition
database server.
Initially I had created a transactional replication type publication and
when I created the subscriper from the 2005 SQL box it took off and I could
see my 45 GB database beginning to build on the SQL 2000 box in the directory
I had pointed at.
I continued to read about replication as it was building and realized that I
was supposed to create a publication that was a transactional publication
with updating subscribers to allow the SQL boxes to stay synced. I then
killed the subscriber, the publication and even recreated the snapshot, then
the new publication as a transactional publication with supdating
subbscribers. I then added the SQL2000 box as a subscriber again. The
problem is that now that I have done this it seems
to be taking forever to build the subscriber database. Its been 1 hr and
its only 21MB. Almost on an excact interval of 5 minutes the Replication
monitor errors out. If I go into the subscription watch list and if ZI
choose to view details on that subscription I can see that at an almost exact
interval of 5 minutes the same error keeps occurring.
"Insert Error: The column name or number of supplied value does not match
table definition."
And the underlying sql staement that is related is allways the same. It is:
CREATE procedure "dbo"."_GetKey_RunNumber" @TDate as VarChar(10), @Daily as
int, @NewKey AS INT OUTPUT
AS
BEGIN TRAN
DECLARE @numJobs int
DECLARE @numJobs2 int
SELECT @numJobs = max(highrun) from Next_RunNumber where tdate = @TDate
if @numJobs > 0
Update Next_RunNumber set @NewKey = highrun = highrun + 1 where tdate =
@TDate
else
BEGIN
if @Daily = 1
SELECT @numJobs2 = max(runnumber) from trips where tdate = @TDate
ELSE
SELECT @numJobs2 = max(runnumber) from trips where tdate >
(Transaction sequence number: 0x001A163C00016B48015200000000, Command ID:
2405)
The only way I could automatically keep things running was to go to the
distributor and start something called a "Common Job". Specifically the job
I started was the one called "Reinitialize subscriptions having data
validation errors". Until I started that job I would have to open the
replication monitor and click START JOB every time or it would just sit there.
Any help would be greatly appreciated.
.
- Follow-Ups:
- Re: Transation replication with updateable subscribers
- From: Hilary Cotter
- Re: Transation replication with updateable subscribers
- Prev by Date: Database Triggers - drop a Procedure used in Replication
- Next by Date: Re: The process could not connect to Subscriber
- Previous by thread: Database Triggers - drop a Procedure used in Replication
- Next by thread: Re: Transation replication with updateable subscribers
- Index(es):
Relevant Pages
|
Loading