When installing WSS, MOSS or Microsoft Search Server (MSS) you have the easy way, and the hard way. This is one case where the hard way is the right way. They all offer a "Basic Install" to help speed though the setup. On the surface Basic Install seems like a good thing. You don't have to fuss with installing SQL or configuring accounts. You just click install and Setup.exe does the rest. Unfortunately it's not all wine and roses. Going with a Basic Setup sets you up for trouble down the road though. If you believe Shane Young, a puppy dies every time a Basic install is done. In this blog post I'll give you an overview of how to avoid a Basic Install, how it differs from an Advanced Install, why it's bad, and if it's possible, how to fix to it.
How to avoid the Basic install
One of the first choices you have when installing WSS, MOSS or MSS is whether you want to do a Basic or Advanced Install. Below is the screen from MOSS, but WSS and MSS look the same.
The theme of this blog post is "Don't do a Basic install." Not even if the description for a Basic install fits your situation exactly. Always click Advanced. Microsoft really wants to make sure you have the opportunity to screw up and do a Basic install. If you click Advanced you get two (three in MOSS) options and one of them is the same as Basic, and it's the default!
When installing WSS you need to click Advanced, then Web Front End. In MOSS you have three options:
The last option is the cleverly disguised Basic install. The first option installs all the MOSS functionality. This means the WFE functionality, as well as the other application functionality like Index, Query, Excel Services and so on. For 99% of MOSS installations this is the correct choice. It gives you maximum flexibility. The middle option is for the more security conscious among you. It installs the fewest bits, which means the smallest attack vector. Choosing either of the first two options avoids the pitfalls of the Basic install.
What's the difference?
Are you asking yourself what the big deal is? Why am I writing a whole blog telling you not to do a Basic install? Basic installs back you into a corner and they take away options down the road. How? I'm glad you asked. First, one of the ways a Basic install is easier is that it doesn't ask you for any account information. It handles all this for you. It does this by running all the app pools as LocalSystem accounts. This is a problem for a couple of reasons. It doesn't allow you to add more servers down the road. It can also cause problems with permissions. On one occasion a .NET Framework patch changed COM permissions for LocalSystem accounts and broke SharePoint. That only happens if you did a Basic install. If you do a Web Front-End installation you'll have to provide accounts, which will be either Active Directory or local Windows accounts. This is a much better practice. You can use the process that Joel outlines in this blog post to change these accounts around and use Windows or Active Directory accounts. Joel's post doesn't spell it out, but this process doesn't give the accounts the permissions they need in all cases. So you'll need to keep your eye on that.
Basic installs also reduce search performance. MOSS and MSS allow you to control how aggressively the crawler crawls content. When you do a Basic install this gets set to Reduced.
Of course you can set this to a more appropriate setting if you want.
The third difference between a Basic and Advanced install is the type of SQL backend. When you do an Advanced install you must already have some kind of database backend installed for SharePoint to use. When you do a Basic install SharePoint installs a SQL backend for you (even if one already exists on the server) and configures SharePoint to use it, whether you want it to or not. WSS installs Windows Internal Database (WID). MOSS and MSS install SQL Server 2005 Express. Each of them has their drawbacks. WID does not allow remote connections, but allows for large database sizes. It also has very restrictive means of administration. You cannot access it with SQL Management studio, for example. Your hands are mostly tied. SQL Express comes with MOSS and MSS Basic installs. Unlike WID you can connect to it remotely, but it is restricted to 4 GB database sizes. That can be very restrictive. If you want to use MSS, but don't like the 4 GB limit there is a way around it. Since MSS is WSS with MOSS' search components you can install it on top of WSS. If you install MSS on top of WSS the WID component stays in place. You'll have to set the WID instance as the default content source, but you'll get all the functionality of MSS and be able to create databases larger than 4 GB. If you installed MOSS with a Basic install you can use the steps here to upgrade SQL Express to SQL Standard or SQL Enterprise. This gets you part of the way out of the Basic install hole.
If you don't already have a SQL Server infrastructure in place, and still want to try out SharePoint for free, you don't need to do a Basic install to do it. You can download SQL Server Express for free and use it. Simply install it before SharePoint. Then during your Advanced install point SharePoint at the SQL Express installation you just installed. You still get a free SQL environment, but without all the pitfalls of a Basic install. If you go this route you also have the option of installing SQL Express on one machine and SharePoint on another. That's an option you don't get with a Basic install.
Hopefully after reading this post I've convinced you that Basic installs are bad. They cause lots of problems down the road and with a little planning, they can be avoided completely. If for no other reason, please think of the puppies.