PSCONFIG for WSS 3.0 and MOSS 2007 is your friend

In my line of work, I have to have a few SharePoint farms sitting around with different topologies, settings, etc.

I certainly don't have a separate database server for each farm to support these configurations, and I don't want to have a separate virtual server for each SQL server either.  Therefore, I utilize one box primarily for SQL in which I store all my databases for my various farms.

The problem with this is when running the Post Setup Configuration Wizard for Windows SharePoint Services 3.0 and Microsoft Officer SharePoint Server 2007.  For each farm, a separate content database is created for each central admin site with a name that makes it difficult to just look at the database name and figure out which farm it belongs to :).  The name using the following form:

SharePoint_AdminContent_<insertguidhere>.

So, by looking at the database name, you can tell it's for the Central Admin site, but the guid doesn't just shout out which farm it belongs to :).  I can't count the times when I go cleaning up leftover databases from test farms, only to accidentally kill an admincontent database that was STILL IN USE!!

I could have multiple SQL Instances to help sort this out, but I don't, instead I use PSCONFIG rather than the GUI based configuration wizard and name my admincontent database explicitly.

So with that in mind, consider the following topology

 

krichie-fosqlp is the name of my SQL 2005 Principle Server.

krichie-fowfe1 is a web server running as a Web Front End.

adomain\SPService is my SharePoint farm account

adomain\SQLService is my SQL service account used by SharePoint

After installing, deselect the "Run the configuration wizard" check box and close, then jump to the BIN folder of the web server extensions path and run PSCONFIG such as follows:

psconfig -cmd configdb -create -server krichie-fosqlp -database krichie-fo-wss-configdb -user adomain\SPService -password "SPServicePassword" -admincontentdatabase krichie-fo-wss-admin-content -dbuser adomain\SQLService -dbpassword "SQLServicePassword"

This will run through the post setup configuration wizard and use the database names that I provide.  Now my database names reflect the farm their associated with.

Also, don't forget to provision the admin site itself.

psconfig -cmd adminvs -provision

I know, it's not much, but a nice tip to keep in your back pocket.

- Keith