Short question: Can anyone tell me what the requirements (especially when it comes to SQL components) are for the web server used as web sync for merge replication?
Background:
I have a solution which uses merge replication to do one-way data sync with the client application of the solution.
The server uses SQL Server 2008, the client SQL Server 2008 Express and initiates the pull subscription using RMO. The request goes through Web Sync. All is fine when the IIS and the DB is on the same server - the problem occurs when the IIS is on a standalone web server.
From the error logs, it seems certain SQL components are required on the web server to make this work - but I haven't been able to find which ones. I've tried installing SQL Server 2008 Express on this server, with no luck.
So: Can anyone tell me what the requirements (especially when it comes to SQL components) are for the web server used as web sync for merge replication?
EDIT:
I've tried to install the native client, but no luck. Perhaps I'm interpreting the log wrong? Here it is:
CReplicationListenerWorker , 2012/02/27 09:55:24.901, 1060, 174, S2, INFO: =============== START PROCESSING REQUEST ============== CReplicationListenerWorker , 2012/02/27 09:55:24.901, 1060, 212, S1, ERROR: CoCreateInstance failed for CLSID_SQLReplErrors, hr = 0x00000000. CReplicationListenerWorker , 2012/02/27 09:55:24.901, 1060, 298, S2, INFO: Processed request type: MESSAGE_TYPE_UploadEmpty. CReplicationListenerWorker , 2012/02/27 09:55:24.901, 1060, 396, S2, INFO: =============== DONE PROCESSING REQUEST =============== CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 174, S2, INFO: =============== START PROCESSING REQUEST ============== CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 212, S1, ERROR: CoCreateInstance failed for CLSID_SQLReplErrors, hr = 0x00000000. CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 298, S2, INFO: Processed request type: MESSAGE_TYPE_UploadEmpty. CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 396, S2, INFO: =============== DONE PROCESSING REQUEST =============== CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 174, S2, INFO: =============== START PROCESSING REQUEST ============== CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 212, S1, ERROR: CoCreateInstance failed for CLSID_SQLReplErrors, hr = 0x00000000. CHttpListener
, 2012/02/27 09:55:24.964, 1060, 258, S2, INFO: Exchange ID = EF7753FB-F315-4FE3-8E8D-E77CCD366825. CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 298, S2, INFO: Processed request type: MESSAGE_TYPE_SyncContentsUpload. ReconcilerHost , 2012/02/27 09:55:24.964, 1060, 160, S1, ERROR: CoCreateInstance failed for CLSID_CDatabaseReconciler, hr = 0x80040154. ReconcilerHost , 2012/02/27 09:55:24.964, 1060, 191, S1, ERROR: ReconcilerHost::Initialize failed, hr = 0x80040154. CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 315, S1, ERROR: Failure initializing ReconcilerHost, hr = 0x80040154. CReplicationListenerWorker , 2012/02/27 09:55:24.964, 1060, 396, S2, INFO: =============== DONE PROCESSING REQUEST ===============
According to How to: Configure IIS for Web Synchronization, Microsoft SQL Server Connectivity Components and SQL Server Management Studio will need to be installed on the computer that is running IIS by using the SQL Server Installation Wizard.