Installing SQL Server Quietly with the .iss File
So what now? We have an .iss file with all the custom options specified for this installation of SQL Server, but as yet no actual installation of SQL Server. To install SQL Server silently, specifying the .iss file we've just created, use the command in Listing 3.
Do not actually run the following command, unless you really want to install SQL Server.
Listing 1.3Installing SQL Server Silently, Specifying the .iss File We Recorded Earlier
x:\Setup\SQLSetup.exe z s f1c:\winnt\setup.iss
-z. This ensures that setup will run on systems that have more than (yep, that's right, more than) 256MB of RAM installed. Otherwise, an error is generated that reports there is insufficient memory available and the setup program will terminate. I am sure that in Yukon (the next version of SQL Server), this parameter will become redundant
-s. Forces setup to run silently with no user input.
-f1. Allows you to specify a different path to the .iss file. If this option is not used, setup looks for an .iss file in the same folder path the setup file resides in; that is, x:\Setup\.
Other options you can use with setup are as follows:
-f2. Allows you to specify a different path to the .log file. If this option is not used, setup creates a .log file in the C:\WinNT (%SYSTEMROOT% variable) Windows directory.
-r. Forces setup to record an .iss file within the C:\WinNT (%SYSTEMROOT% variable) Windows directory.
Because we have recorded our own .iss file, you will see a number of values (parameters) that you would have specified during the Installation Wizard (for example, the company name that you registered the SQL Server software to). If you compare our file with the sample .iss file that ships with SQL Server, you will see that the registered user is Microsoft; so if you had used this "sample" .iss file, you would need to change at least this value in the .iss file to suit your company.
By building an .iss file and calling the SQL Server installation file, we have managed to reduce our differing installations almost immediately. Every administrator who uses this method ensures that the installation of SQL Server is exactly the same.
The problem arises, however, when you have a machine which requires almost the same installation but not quite, i.e. has multiple disks or is not a member of a domain.
We could manually edit the .iss file or regenerate a new one, but as you can imagine, doing this for every installation gets tedious pretty fast! Opening the .iss file, editing and saving it, and then launching the installation of SQL Server each and every time means that each time you install SQL Server on a different server (or if, like me, for a different client), you will need to modify the .iss file and then launch the installation. Or rerecord the .iss file, and by then you may have well have installed SQL Server!
However, rest assured that there is a better (and more time-saving way) to achieve this. Whew!
In the next article, we will take a look at how to reduce some of the overhead costs of managing the silent installations by writing our own batch files for installing SQL Server.