I implemented a merge replication publication on a SQL Server 2005
Enterprise instance on a test server. On my laptop I have VS.NET 2005
installed with SQL Server 2005 Express.
It's my understanding that I can subscribe to a publication with
Express. I also have SQL Server Workgroup installed on my laptop so I'm
able to use Management Studio to control the Express instance.
The first issue I encountered was that you cannot subscribe to a
publication if you are not on the same network as the publishing
instance (it requires the actual server name). And in lieu of this I
tried to implement Web synchronization, but had problems with SSL
(which is my problem since I'm not entirely familiar with how to
implement SSL certs so they don't show the security warning on the
client without purchasing a certificate).
So then I decided to go ahead and create an account on my laptop and
add it to the domain of the test publishing server. I was then able to
subscribe to the published replication.
So then I look at my Express instance and the synchronization never
runs. In the documentation it says that you're supposed to be able to
right-click on the subscription and "View Synchronization" and force it
to run. This is not available in the Express instance, but it is
available in the Workgroup instance.
So I'm looking at cleaning up my web synchronization issues to make
that work, but I see two issues here.
1) Why do I have to specify the "real name" of the publishing database?
Why can't I access it like any other sql server via an IP address? This
seems like a highly restrictive implementation of replication to me.
2) Why do I have to implement SSL for replication? I understand the
need for security, but that should be left to me to implement. I
shouldn't be forced to use SSL as my security layer.
3) Why doesn't Express have "View Synchronization"?
Any help here is greatly appreciated.
David Cornelson
Hi David,You should be able to use Web synchronization in your case.
Regarding your questions:
1) Not sure what you mean here. You need to have the actual and real publishing database name. Without it, we cannot know which database the subscription is referring to.
2) SSL is required for Web Synchronization. It is for Security Purposes. A security feature cannot be optional.
3) SQL Server Express does not have SQL Server Agent. Hence you do not have 'View Synchronization' (Workgroup has it and hence you see the option). You need to either use RMO or ActiveX sync components or use the Window Sync Manager to synchronizing.|||
re 1) So why can't I direct a subscriber to ipaddress\instanceName? Why does it have to be serverName\instanceName?
2) If all of my replication is done within my own company, say I have Smart Clients that are on different segments of my network, so they can't actually "see" the publishing database, I might want to use web synchronization and _not_ use SSL. You're making a security decision that I don't need. I understand that this should be default behaviour, but I should be able to turn it off. You're actually making my architecture more complex by forcing SSL into my replication strategy.
3) Where can I find information on Windows Sync Manager?
Thanks,
David C.
|||1) Not sure, but looks like there is no option for you to provide an ipaddress of the publisher to connect to. Servername/instance may be the only way.2) Security is always a big concern and that is the reason for mandating the SSL. If you wish, you could workaround with a test certificate. MSDN has a tool for installing a test certificate.
For IIS6.0: http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&displaylang=en
For IIS5.0: http://support.microsoft.com/default.aspx?scid=kb;en-us;228984
3) Windows Sync manager comes with Standard windows installation. Books online has more information about synchronizing using Sync Manager. To open Sync Manager follow either of the steps:
a) Windows Explorer-->Tools-->Synchronize
b) Start-->AllPrograms-->Accessories-->Synchronize|||1) Okay
2) Alright
3) It only has a Sql Server 2000 and an IE sync listed. Where's 2005?
Thanks for the help.
David C.|||3) I dont understand what you are saying. Where do you see SQL Server 2000 listed?
Windows sync manager is a windows mechanism for synchronization which can be launched using the 2 methods I described in my previous post. You have to enable the subscription on the Subscriber to be using the Windows Sync Manager. Once you have done that, you will start seeing the subscription in the Sync Manager and you can synchronize the subscription with the publication at the Publisher.
No comments:
Post a Comment