The installation CD or downloaded setup files include complete instructions for installing SQL Server 2005. When you first put the disc into your CD drive or execute the xxx file, you'll see the screen shown in Figure 1-2. The first option allows you to open a document containing detailed lists of the software and hardware requirements for SQL Server 2005. The online companion content contains a detailed upgrade guide called SQL Server 2005 Upgrade Handbook. The handbook is also available at the Microsoft SQL Server Web site: http://www.microsoft.com/technet/prodtechnol/sql/2005/sqlupgrd.mspx. This chapter points out some crucial issues to be aware of when you set up your environment; however, you should not consider it a replacement for the upgrade guide or the setup documentation in SQL Server 2005 Books Online. Figure 1-2. The initial splash screen when installing SQL Server 2005
You can find the complete Books Online on your installation disk at \Servers\Setup\help\1033\Setupsql9.chm or \Tools\Setup\help\1033\Setupsql9.chm, where 1033 can be replaced by another language ID if you are not installing the English version of SQL Server. For example, French is 1036, German is 1031, and Japanese is 1041. You can find the complete list of language ID values at www.microsoft.com/globaldev/reference/lcid-all.mspx. The complete SQL Server 2005 documentation is also available online at http://msdn2.microsoft.com/en-us/library/ms130214.aspx. SQL Server 2005 EditionsSQL Server 2005 is available in multiple editions. The edition you install will depend on the features you want and the hardware resources you want to take advantage of. The software and the hardware requirements will also vary by edition. If you have the installation CD already, you know the edition and its requirements. If you haven't yet procured the software, take note that there are editions for Pentium-compatible 32-bit processors as well as for Intel Itanium architecture processors (indicated in the requirements document as IA64) and AMD architecture/Intel Extended Systems architecture processors (indicated in the requirements document as X64). SQL Server 2005 has either 6 or 10 editions, depending on whether you think that SQL Server running on a 32-bit platform is always a different edition from one running on a 64-bit platform. (In the following list of the six editions, four are available for either 32-bit or 64-bit.) Most editions are available on their own CD. The following information is from SQL Server Books Online:
The features in Enterprise Edition (as well as in Developer Edition and Evaluation Edition) that are not in Standard Edition generally relate to hardware support and high-availability features. When I discuss such features, I'll let you know. For full details on what is in each edition, see the Books Online topic "SQL Server 2005 Database Engine Features." Software RequirementsThe installation documentation is very clear about which editions of SQL Server are supported on which operating systems. Keep in mind that the limitations are not necessarily due to particular SQL Server features not being able to run on particular platforms; rather, they might be based on what kind of operations you are expected to do with the database. For example, as mentioned earlier, the Evaluation and Developer editions have all the features of Enterprise Edition, but they can run on lower-end operating systems. An organization that deploys Enterprise Edition, on the other hand, is expected to run an enterprise-level application with many concurrent users and large volumes of data. Such large-scale applications are best served by running on an operating system and hardware platform that can support these larger numbers of users and much larger volumes of data. As you read the installation documentation, pay attention to which service packs are required for the various operating systems. For example, all editions of SQL Server 2005 will run on Windows 2000, but only if SP4 has been applied. For most editions, if you have the appropriate operating system, you don't need to install additional software before you run the setup program, Setup.exe. You do need to have the Microsoft .NET Framework 2.0 installed before you install SQL Server, but Setup.exe will install it for you for all editions except Express Edition. (For Express Edition, you must download the .NET Framework 2.0 from Microsoft's Web site.) You might also need to install additional software before installing some of the components. For example, to install and run Reporting Services, you must have Microsoft Internet Information Services (IIS) 5.0 or later installed. Hardware RequirementsAfter it confirms that you have all the prerequisite components installed, Setup.exe will verify that the computer where SQL Server will be installed meets all of the other requirements for a successful installation. A new component of Setup.exe called the System Configuration Checker (SCC) scans the computer and checks for conditions that prevent a successful installation. Some of these conditions relate to the availability of needed services, and others relate to minimum hardware specifications. If the conditions aren't met, SCC will give a warning or block the installation of SQL Server. For example, it will block setup if the requirement for processor type is not met. However, if the minimum or recommended processor speed is not met, or if the minimum or recommended RAM check is not met, SCC will issue a warning but will not stop the setup process. You must meet additional hardware and software prerequisites to install SQL Server failover clustering. Microsoft Cluster Server (MSCS) is required on at least one node of your server cluster, and MSCS is supported only if it is installed on a compatible hardware configuration. Again, I strongly suggest that you thoroughly read the upgrade guide before installing SQL Server 2005. This guide is useful information even if you are not upgrading but installing your first SQL Server. Keep in mind that the hardware requirements are only the minimum SQL Server needs to run. If you want SQL Server to run well and fast, you'll probably want to exceed the minimum, by as much as your budget will allow, in many cases. The following sections discuss some of the most critical issues to be aware of when planning your hardware environment. ProcessorsAll SQL Server 2005 32-bit editions need at least a Pentium III processor, with a minimum speed of 500 MHz and a recommended speed of at least 1 GHz. For 64-bit editions, the minimum is slightly higher, but the recommended speed is still at least 1 GHz. For any real database operations, you'll probably want to far exceed this minimum, so the difference between 32-bit and 64-bit is really moot. The maximum number of processors depends on the edition you are using. Enterprise Edition, both 32-bit and 64-bit, supports the maximum number of processors supported by the operating system. You'll probably also want to investigate hyperthreading and the new dual-core CPUs, through which SQL Server sees each of your processors as two processors. In both cases, you'll need only a single license per CPU chip even though SQL Server will see twice as many CPUs, which can result in greatly increased performance in some cases. DisksThe disk space requirements given in the installation documentation and during setup are only for the SQL Server components, the initial size of system databases, and the initial size of the sample databases and sample code (if you choose to install them). No space requirement is shown for your own databases because only you can estimate how much space you'll need. As we look at file structures and table storage later in this book, you'll get some ideas about how to realistically estimate the space you will need for your data. The installation requirements do not specify any specialized kind of file system or even having more than one drive, either logical or physical. For a minimum installation, all you need is your C drive. As we look at SQL Server files and filegroups later, I'll talk about why you might want to spread out your data as well as separate it from your transaction log. We will look at the tempdb database as a special case, and I'll tell you why you might want to manage your tempdb disk space separately from other system databases. You can easily change the location of tempdb after installation, so I'll save that discussion for later. You should try to have the best disk system you can afford. For most SQL Server installations, you'll want a disk system that supports redundancy to provide for higher availability in case of failure. Redundancy (or fault tolerance) is usually provided by some type of RAID system. RAID-10, or a stripe of mirrors, is the ultimate choice for performance and recoverability. RAID-10 is not really a separate type of RAID, but rather a combination of RAID-1 (mirroring) and RAID0 (striping). A series of disks are first mirrored to provide the fault-tolerance features and increased read performance of RAID-1 and then striped to provide the performance advantages of RAID-0. Performance for both writes and reads is excellent. RAID-01 is the opposite in which a series of disks are striped in two RAID-0 configurations and then mirrored together. Both RAID-10 and RAID-01 refer to combining the capabilities of RAID0 (striping) with RAID-1 (mirroring) for greater speed and fault tolerance without the overhead of computing a parity value, which is used in RAID 5. However, the terminology is not standard. Some sources use the terms RAID-10 and RAID-01 interchangeably, so it is important to understand which physical configuration you end up with. Although the performance is comparable between the two, the stripe of mirrors is vastly more fault tolerant than a mirror of stripes. MemoryThe hardware requirements specify a minimum of 512 MB of memory for all editions of SQL Server 2005 except Express, with a recommended value of at least 1 GB. For your production systems, obviously you'll want much more memory than that. I'll discuss memory use in detail when I talk about SQL Server architecture in Chapter 2. The most important detail you should keep in mind before installation is that a 32-bit platform can directly address only 4 GB of memory, no matter how much memory is installed in the machine. Of that 4 GB, applications such as SQL Server can normally use only 2 GB, but there is an operating system flag that allows 3 GB of memory to be directly addressed by a user application. Additional memory beyond that must be accessed indirectlyusually through the /PAE flag in the operating system and the AWE configuration options in SQL Server. A true 64-bit system can directly address far more than 4 GB of memory, so you do not have to worry about special flags or options if you want to use up to the maximum amount of memory that your edition of SQL Server supports. |