Solved

Error 20736 while setting up merge replication in SQL Server 2000

Posted on 2008-10-30
4
373 Views
Last Modified: 2012-08-13
I'm trying to setup a merge replication for a database (name is eeq_ann)  in SQL Server 2000.

I got the problem before so I tried a clean install and I still have the trouble.

I create a distributor for my server without any problem.  Now I try to setup a new publication so I use "new publication" in the Enterprise Manager.

I see my database 'eeq_ann', select the table I want to replicate, etc. then I create the publication.  However, during the publication creation process, there is an error :

SQL Server Enterprise Manager could not create publication 'eeq_ann' from database 'eeq_ann'
Error 20736: [SQL-DMO]This object has been dropped from the server.

After that, if I go to create a new publication, I cannot select my database as the system somehow thinks there is one even thougth I cannot see it in the enterprise manager explorer.  When I go to Tools -> Replication -> Create and Manage Publications, I can see it in the tree view but I cannot delete it.

So I tried to delete it manually using the following :

use eeq_ann
go
exec sp_dropmergepublication @publication=N'eeq_ann'
use master
go
exec sp_replicationdboption @dbName=N'eeq_ann',@optname=N'merge publish',@value=N'false'

it says it removed the publication and I do not see it anymore as a matter of fact.  So I tried to recreate the publication, but now I get the same 20736 error in the publication wizard when I try to select a table to merge.

Thanks for the help!
0
Comment
Question by:Francois_Tremblay
  • 3
4 Comments
 
LVL 15

Accepted Solution

by:
MohammedU earned 500 total points
ID: 22846724
Did you try creating with script...if not...
Try the following...

 
 exec sp_adddistributiondb @database = 'distribution', @data_folder =
N'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data', @data_file =
N'distribution.MDF', @data_file_size = 7, @log_folder = N'C:\Program
Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data', @log_file =
N'distribution.LDF', @log_file_size = 8, @min_distretention = 0,
@max_distretention = 72, @history_retention = 48, @security_mode = 1
GO

-- Adding the distribution publishers
exec sp_adddistpublisher @publisher = @@servername, @distribution_db =
N'distribution', @security_mode = 0, @login = N'sa', @password = N'',
@working_directory = N'C:\Program Files\Microsoft SQL
Server\MSSQL.1\MSSQL\ReplData', @trusted = N'false', @thirdparty_flag = 0,
@publisher_type = N'MSSQLSERVER'
GO
0
 

Author Comment

by:Francois_Tremblay
ID: 22849363
I think I found the problem.  

When I created my table, I created it using a DTS from the table on the old computer we are replacing.  I copied everything, then I removed the rowguid column created by the replication settings.  However, I did not remove the data.  When I remove the data the replication is created successfully.

I will try later today to see if everything works, I just created it right now.
0
 

Author Comment

by:Francois_Tremblay
ID: 22850883
I found out that when I start from a restore of the database I have lots of trouble creating the replication.

So right now I instead create an empty database and use the script generated by the enterprise manager to output all tables information directly in that empty database.

Now it works.
0
 

Author Closing Comment

by:Francois_Tremblay
ID: 31511841
Did not solve the problem but put me on the path.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Having an SQL database can be a big investment for a small company. Hardware, setup and of course, the price of software all add up to a big bill that some companies may not be able to absorb.  Luckily, there is a free version SQL Express, but does …
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
Viewers will learn how the fundamental information of how to create a table.
Viewers will learn how to use the SELECT statement in SQL and will be exposed to the many uses the SELECT statement has.

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now