SQL Server deployment question

Topics: Technical Questions
Mar 24, 2009 at 8:57 PM
Hello, I was wondering if you can deploy the MSE to a SQL server without installing the Catalog Service on the SQL server itself?  If this is possible can you provide any information on how this is done?  If this is not possible, can you tell me if it is possible to install the Catalog Service on a SQL cluster?  Our Production SQL environment uses a SQL 2008 cluster, and I'm trying to determine how MSE would be installed in this case.
Mar 25, 2009 at 12:21 AM
Edited Mar 25, 2009 at 12:31 AM
Yes, you can deploy in such configuration. You would have to select "Custom" Installation rather than "Complete" and provide the [Server]\[Instance] where you want to setup the database.  The custom install provides the opportunity to deploy various components in a distributed fashion.

Alternatively, if you install the MSE in your dev box and you look under your "installation directory\Repository" you will find the batch file used to deploy the database (DeployDatabase.bat).  you could run that from command line as well.

The Catalog Service in the cluster is also a configuration that can be achieved, but you will have to make sure that the Catalog Service is installed in all cluster member nodes and that it is appropriately configured as a clustered service.
Aug 6, 2009 at 10:20 PM

I also need to run only the database on the SQL server. I'm trying the custom install option and can't get it to work at all. When I get to the end of the installer it tells me: "WARNING: Unable to verify connection to SQL Server...the installation of the Catalog Repository will fail." And, it does fail.

Basically I'd like to run everything on one server right now, except the database which I would like running on our SQL server. The documentation confused me, it states that "Only machines in the "'Catalog Repository Role' require SQL Server." What does that mean?

Aug 7, 2009 at 12:24 AM

There should be no problem running the installation from a local machine and connecting to a SQL Server on another machine to deploy the database.  There are a few things to note though:

1) The Warning message you are receiving is indicating that either a) the Sql Server is not available on the network, or b) your logged in account doesn't have permissions. 

To deploy the database, the logged in account you are using to run the msi must be a sysadmin on SQL Server in order to create the database, set the database settings, and run the installation scripts.

Also verify that the SQL Server instance has TCP protocols enabled so it can accept remote connections.

2) The msi will register the MSE as installed on your local machine (in Add/Remove Programs) even if you only intend to install the Catalog Repository and point it to a remote machine.  This can cause a problem since the installer will check to see if you already have the MSE installed locally.  So from your local machine if you have the MSE already installed, you wouldn't be able to use the msi to deploy the database to another machine.

I'd recommend following the path that tonygon mentions above if you have problems with deploying the database using the msi.  Ultimately the msi is just calling the DeployDatabase.bat file that exists in the repository folder.  So if you use it directly you may be able to identify the problem more easily.


Aug 11, 2009 at 7:58 PM

Thanks. #1 did not work, I ran out of time and did not get to fully try #2. I tried it once, incorrectly, and ended updeploying into the master db. I ended up deploying sql 2008 to the server temporarily to get operational.

I also tried installing to create the database on the sql server, then uninstalling, leaving the db intact but removing the MSE assemblies. Then I ran the MSE installer on the MSE server, but it could never connect to the SQL server. Any clues?

Aug 18, 2009 at 6:39 PM

Yes, please follow Brian and Tony's recommendation to install the MSE in your dev box and you look under your "installation directory\Repository" you will find the batch file used to deploy the database (DeployDatabase.bat) and run that from command line. Please not any errors you see in the console.