Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems



Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

ii Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Contents

Authors ...... v Deploying DB2 UDB products using Microsoft Systems Management Server (SMS) 2003 . . . .20 Chapter 1. Introduction ...... 1 Packaging DB2 UDB using SMS ...... 20 Distributing DB2 UDB using SMS ...... 25 Deploying DB2 UDB products using Chapter 2. DB2 UDB Version 8.2 product Distribution 4.2 ...... 32 overview ...... 3 DB2 UDB software package creation options . .32 DB2 clients ...... 3 Creating software packages for installation using DB2 UDB servers and database engines . . . . .4 the Software Package Editor ...... 33 DB2 UDB developer’s editions ...... 4 Creating a DB2 UDB software package using the DB2 UDB features ...... 5 Package Definition File Importer tool . . . . .47 Deploying DB2 UDB product FixPaks . . . . .48 Chapter 3. DB2 UDB product unattended installation capabilities ...... 7 Chapter 6. Diagnosing problems with DB2 UDB product response files ...... 7 distributed installations ...... 51 Creating a response file...... 7 Troubleshooting silent installations ...... 51 Creating a DB2 configuration profile . . . . .9 Locating the installation log files ...... 51 Recording tracing information ...... 51 Chapter 4. Reducing the size of the Reading the log files ...... 51 DB2 UDB product installation image . .11 Determining installation success or failure . . .53 How the db2iprune utility works ...... 11 Response file errors...... 54 Pruning a DB2 UDB product installation image . .12 The WiLogUtl.exe file tool ...... 55

Chapter 5. Deployment of DB2 UDB Chapter 7. Notices ...... 57 products ...... 19 Trademarks ...... 59 Deploying DB2 UDB products by performing the unattended silent installation ...... 19

iii

iv Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Authors v Rory A.A. Hinton, DB2 Up and Running Solutions, IBM Software Lab v Andrew Hilden, DB2 Installation, IBM Toronto Software Lab v Louisa Ford, DB2 Installation, IBM Toronto Software Lab

v

vi Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 1. Introduction

The distribution and installation of any database software across large numbers of clients and servers can be a daunting task. However, DB2® Universal Database (UDB) Version 8.2 has features and tools that allow both servers and clients to be deployed quickly and seamlessly across your enterprise using a variety of deployment methods. DB2 UDB Version 8.2 can be deployed using deployment technologies such as Microsoft® SMS and Tivoli Software Distribution, and it also supports an easy and effective manual deployment method. The type of deployment method best suited for your organization depends on your distribution and maintenance requirements, as well as on the hardware, software, and overall infrastructure of your existing computer environment.

If you are a database or systems administrator, use the information in this paper to prepare and deploy a DB2 UDB software package across your existing computer environment. This paper includes information on using Microsoft SMS 2003 and Tivoli Software Distribution 4.2 for DB2 UDB deployment. If your preferred method of distribution is not covered explicitly in this paper, the concepts discussed can be applied to other distribution methods.

Before you start a mass deployment of DB2 UDB, you might need to migrate your present version of DB2 UDB to DB2 UDB Version 8.2. For more information, consult the following resources: v The DB2 UDB support site should be your first stop for DB2 UDB information that includes news alerts, DB2 UDB FixPaks, DB2 client downloads, FAQs, Redbooks, white papers, presentations, and hints and tips: http://www.ibm.com/software/data/db2/udb/support.html v The DB2 Information Center contains documentation for DB2 UDB and related DB2 products. It covers every aspect of DB2 products, from getting started, to database connectivity, database administration, query management, business intelligence, and application development. The DB2 Information Center is available at: http://publib.boulder.ibm.com/infocenter/db2help/index.jsp v The DB2 Migrate Now! web site provides resources for migration from Oracle, Sybase, and Microsoft SQL server. You can find a variety of tools and information to help you migrate applications, database designs, and data to DB2 UDB at: http://www.ibm.com/software/data/db2/migration/ v DB2 UDB conferences also provide valuable DB2 UDB information on new product features and techniques for problem solving

1

2 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 2. DB2 UDB Version 8.2 product overview

Before you start, you should understand which DB2 UDB products and features to install on which computers. The DB2 UDB product line for Version 8.2 on Windows operating systems has over 15 products. Choosing the right product to install for your existing computer environment can be challenging if you are not familiar with the DB2 UDB product line. To help you determine which DB2 UDB products to install on the computers in your computer environment, we have provided the following product overview. This overview is not intended to detail the licensing terms of each product, but to summarize the features and usage scenarios for each product. Furthermore, this overview focuses on the products that seem to have caused some confusion over their roles (as indicated through PMRs, newsgroup postings, and other communications with IBM customers); it does not cover all DB2 UDB products.

DB2 clients There are four DB2 client products. Each product provides a different level of functionality.

The DB2 Run-time Client is designed for computers that need the DB2 client to enable communications with remote DB2 UDB servers, but do not need to administer any servers. No graphical tools are provided. However, any application which uses DB2 UDB should be able to run with just this product.

There is also a smaller version of the run-time client called the DB2 Run-time Client Lite. This client is available for Windows operating systems only. It provides most of the features in the DB2 Run-time Client except NetBIOS, APPC and MDAC are not bundled with the installation image. Please note that the command line parameters for the setup.exe file of the DB2 Run-time Client Lite are different than the other client products. Therefore, some of the discussions in this paper must be adapted for the DB2 Run-time Client Lite.

The DB2 Administration Client is designed for DB2 UDB administrators. It has all the abilities of the DB2 Run-time Client, plus all of the graphical tools. A compact installation of the DB2 Administration Client is functionally equivalent to a compact installation of the DB2 Run-time Client.

The DB2 Application Development Client is designed for software developers who are writing software to use with DB2 UDB, or compiling software against both DB2 UDB and DB2 Connect. It has all the functionality of the DB2 Administration Client, with additional tools for application development.

DB2 Connect Personal Edition is a licensed client that has all of the functionality of the DB2 Application Development Client, plus the ability to connect to host or iSeries databases, such as DB2 UDB for MVS.

Because each client includes all of the functionality of the clients preceding it, you rarely need more than one client installed on a single computer. Multiple clients are usually installed when a computer role is being changed. For example, this scenario would occur when a user is promoted to a DBA role, and thus may need to move from a DB2 Run-time Client to a DB2 Administration Client. Another scenario could involve a user who has a new requirement to access host or iSeries 3

databases and thus needs to move to DB2 Connect Personal Edition. In these cases, on Windows operating systems, you can upgrade by simply installing the new client at the same FixPak level over top of the existing one. You can later remove the client that you no longer require from the system without affecting the newly installed product.

DB2 UDB servers and database engines DB2 UDB servers scale in much the same way as the clients. All DB2 UDB servers are licensed.

DB2 UDB Personal Edition is a local database engine. It does not permit connections from remote clients, however, local clients can work directly with local databases. It also contains all of the functionality of the DB2 UDB Application Development Client.

DB2 UDB Express Editions are designed for small and medium businesses with a smaller number of clients. They have all of the functionality of DB2 UDB Personal Edition, but also allow connections from remote clients.

DB2 UDB Workgroup Server Editions are designed for larger scale servers. They have all of the functionality of DB2 UDB Express Edition, but provide more extensive licensing options.

DB2 Connect Enterprise Editions are designed for three-tier gating of clients to host databases such as DB2 UDB for MVS. They have all the functionality of DB2 Connect Personal Edition, plus gateway functionality.

DB2 UDB Enterprise Server Edition is designed for large and very large databases. As such this product includes features like High Availability Disaster Recover, as well as the Data Partitioning Feature (DPF). It also contains the functionality of both DB2 UDB Workgroup Edition and DB2 Connect Enterprise Edition.

Because each server has the full functionality of all clients, including the graphical tools and application development tools, there is no reason to install a client on a computer that already has a server. This situation greatly simplifies a mass deployment of DB2 UDB.

DB2 UDB developer’s editions DB2 UDB Personal Developer’s Edition is a limited-license version of DB2 UDB Personal Edition, targeted towards small development groups. It contains the limited-license DB2 UDB Personal Edition and the DB2 Application Development Client, allowing individual developers to write, compile, and test code against local databases. While it also allows for the use of remote databases for development, the remote database server products are not included in this package. Since DB2 UDB hides details, such as where the database is physically located behind the DB2 API, developing under DB2 UDB Personal Edition is the same as developing under a DB2 UDB server such as DB2 UDB Enterprise Server Edition.

DB2 UDB Universal Developer’s Edition is a full-featured one-stop development offering that is targeted towards large development groups. It contains a bundle of nearly all DB2 UDB for Linux, Unix, and Windows operating system products, including products not mentioned in this paper. Since it includes all server

4 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

products for all platforms, it is used by those who are developing for multiple platforms, or platforms not supported by DB2 UDB Personal Developer’s Edition.

Since these products are identical to previous products, except for their licensing terms, there is no need to install these over top of existing products.

DB2 UDB features Each DB2 UDB product comes with a set of features that determine the amount of functionality and disk space used by the installed product. If you perform a Custom installation, you can select which features to install. For descriptions of DB2 UDB features, refer to the db2_features file in the \db2\windows\samples directory of the DB2 UDB installation image.

Prerequisite features that are required by other features are automatically installed by the DB2 installer so the selected features will function properly.

If you require your DB2 UDB installation image to have a smaller footprint, you can use the db2iprune utility to prune your image prior to installing it. Refer to the section ″Reducing the size of the DB2 UDB product installation image″ in this paper for more information.

Chapter 2. DB2 UDB Version 8.2 product overview 5

6 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 3. DB2 UDB product unattended installation capabilities

The DB2 installer can run either as a graphical installer which provides for an interactive type of installation, or in a mode where input is passed to the installer through a response file. The latter method, which is referred to as an unattended installation, does not display a GUI nor does it require any user input. An unattended installation is used to deploy software to a large number of users, embed DB2 UDB software within applications, or to repeat an installation with the same settings as a previous installation. An unattended installation also provides much more functionality and flexibility than a GUI installation. You can create more than one instance, catalog and create databases, set database manager configuration parameters and profile registry variables during installation, and import instance profiles generated from the db2cfexp command (the connectivity configuration export tool).

Considering the advantages of the DB2 UDB product unattended installation, the best way to deploy your DB2 UDB product across your organization is to perform multiple unattended installations using the DB2 installer with a response file. The unattended installation eliminates the need for user input at the target computers, and by using the same response file, you can roll out identical copies of your DB2 UDB product across multiple computers that contain the same components, registry variable settings, and instance configuration settings. All DB2 UDB products can be installed in unattended mode.

In subsequent sections, we explain how to create a response file and launch an unattended installation.

DB2 UDB product response files In order to perform an unattended installation, you must first create a DB2 UDB product response file. A response file is a text file that is used to specify which DB2 UDB product features and settings to install. For most DB2 UDB products, this specification includes components, languages, registry variable settings, and instance configuration settings. You can also use the response file to import a client configuration profile, which allows you to deploy node and database catalog information to clients. The response file is used as input for the unattended installation. Creating a response file On DB2 UDB products for Windows operating systems, there are three different methods through which you can create a response file: v Using the DB2 Setup wizard v Using the DB2 response file generator (db2rspgn) v Manually editing the sample response file Read the following descriptions to find out which method is best for you. Using the DB2 Setup wizard The DB2 Setup wizard is the graphical DB2 product installer that is used to perform interactive installations. This tool is recommended for a single installation

7

because the wizard provides help and guidance about which features and settings to install. It can also create a response file that contains the features and settings that were selected in the wizard.

Procedure:

To create a response file using the DB2 Setup wizard: 1. Select the Custom installation option, and then select the Create a response file check box on the next panel. The installer saves all of the chosen features and settings to a text file. 2. The default target destination of the response file is displayed on the last panel of the DB2 Setup wizard. On this panel, you may change the location of the response file by typing a new path name in the response file field. 3. The response file gets generated during the DB2 UDB product installation.

The DB2 Setup-generated response file uses default values for DB2 registry variables and instance configuration settings. If you want to deploy configuration settings that are different from the defaults, then you can manually add these settings to the generated response file. Refer to the sample response file in the \db2\windows\samples directory of the DB2 UDB installation image for a list of valid keywords and values for your particular DB2 UDB product. Using the DB2 response file generator (db2rspgn) You can create a response file after your DB2 UDB product has been installed by using the DB2 UDB product response file generator utility, called db2rspgn. The db2rspgn utility takes a snapshot of your DB2 UDB product installation and configuration settings and saves this information to a response file and configuration profile. This method is recommended if you plan to perform any configuration of your DB2 UDB product after installation, such as setting configuration parameters or cataloging remote nodes and databases. All of this information gets saved to the response file, thus eliminating the need to manually add it yourself. The db2rspgn utility automatically creates an instance configuration profile so you do not need to run the db2cfexp command. The resulting configuration profile gets saved to the same directory as the generated response file.

Procedure:

To use the db2rspgn utility, to create a response file: 1. Open the DB2 CLP and issue the db2rspgn command using the following syntax: db2rspgn –d [-i]

where: v -d is used to pass the destination directory for the generated response file and any instance configuration files. v -i is an optional parameter used to input the instances for which you want to create a profile. This parameter can be specified multiple times to input more than 1 instance.

For example, to create a response file and profile in the C:\myfiles directory for the default DB2 instance, use the following command: db2rspgn –d C:\myfiles –i DB2

8 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

The C:\myfiles directory contains two files: a response file (db2ese.rsp) and the DB2.INS file. DB2.INS is the configuration profile file (also known as the Internet Communication Settings file) that contains configuration and connectivity settings. By default, the generated response file is configured to import DB2.INS at installation time by setting the DB2.CLIENT_IMPORT_PROFILE keyword to DB2.INS. Manually editing the sample response file A sample response file is a pre-made response file that contains all possible features and settings to install. The sample response file is located in the \db2\windows\samples\*.rsp directory on the DB2 UDB installation CD (they are the files with the ″.rsp″ extension). You can create a response file by manually editing this text file.

Procedure:

To specify features and settings to install through the sample response file: 1. Uncomment the corresponding keywords by deleting the comment symbol denoted by an asterisk (*). Some keywords are mandatory, which means that they must be specified in order for the installation to continue. These keywords are not commented out (not preceded by *). The remaining keywords are optional, which means that the installation will continue using default values if they are not uncommented and specified. All optional keywords are preceded by an asterisk.

The sample response file has a DB2.CLIENT_IMPORT_PROFILE parameter that allows you to import a configuration profile to the target computers. If you want to use this feature, you will first need to install DB2 UDB on a test computer and take a snapshot of the configuration information using the db2cfexp utility. Refer to the section called ″Creating a DB2 configuration profile″ in this paper for more information on how to create a configuration profile.

This method is the most complicated of the three methods and should only be used if you are familiar with DB2 UDB features and settings. It is also the most feature-rich option because it allows you to deploy a sizable number of DB2 configuration settings that cannot be generated using the DB2 Setup wizard or the db2rspgn utility. Creating a DB2 configuration profile The DB2 configuration profile specifies instance configuration settings, as well as node and database catalog information found in the system node and database directories of your installed DB2 UDB product. Use the db2cfexp utility to create a configuration profile. This utility takes a snapshot of the DB2 instance profile and connectivity information and generates an export file that allows you to distribute DB2 UDB with identical configuration information across multiple computers. The settings that get recorded are database information (including DCS and ODBC information), node information, protocol information, database manager configuration settings, UDB registry settings, and common ODBC/CLI settings.

If you created a response file using the DB2 response file generator (db2rspgn), you do not need to perform this step because the db2rspgn utility automatically creates a configuration profile for you.

If you used the DB2 Setup wizard or a sample response file to generate your response file, you might want to consider creating a configuration profile by using the db2cfexp utility.

Chapter 3. DB2 UDB product unattended installation capabilities 9

Procedure:

To use the db2cfexp command to create a configuration profile: 1. Open up the DB2 CLP and enter the db2cfexp command using the following syntax: db2cfexp filename [ template | backup | maintain ]

where: v filename represents the path/filename of the configuration profile v template creates a configuration profile that will be used as a template for other instances of the same instance type v backup creates a configuration profile for backup purposes v maintain creates a configuration profile that only contains database and node information for maintaining other instances. For example, the following command creates a configuration profile called db2ese_config in the C:\myfiles directory: db2cfexp C:\myfiles\db2ese_config

After you have created the configuration profile, specify its path name in the DB2 response file by setting the DB2.CLIENT_IMPORT_PROFILE keyword.

10 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 4. Reducing the size of the DB2 UDB product installation image

DB2 UDB products give full flexibility to customers by including the maximum number of installable features in their installation images. However, this can put customers at a slight disadvantage due to the large footprint size of the installation images. This issue of footprint size is particularly important for Independent Software Vendors (ISVs) who often embed a DB2 UDB product image into other applications, and who therefore require a very small installation image footprint. To manually reduce the size of the installation image requires someone to investigate which parts of the installation image belong to which feature (usually the cabinet files), which features are not needed, and then to delete the unwanted features. This process is time consuming, error-prone, and requires an advanced knowledge of DB2 UDB products. For example, since some removed features may be required for other features to work, removing them without this knowledge would prevent DB2 UDB products from functioning properly.

You can avoid these potential problems by using the new db2iprune command line utility to reduce the size of your DB2 UDB product installation image for Windows operating systems. This tool is especially useful for mass deployments of DB2 UDB products, as well as for embedding DB2 UDB products within other applications. It is located in the \db2\windows\utilities\db2iprune directory and consists of an input file and a db2iprune executable file. The input file, or .prn file, contains a full list of removable features and is used to indicate which features and languages you want to remove from the installation image. The db2iprune executable file (db2iprune.exe) removes the cabinet (.cab) files associated with those features and languages (cabinet files are a number of related files that are packaged together for deployment purposes), and makes it impossible to remove a component from the installation image if a different feature in the image requires that component to be present. Only the unspecified features, and any components that the unspecified features require, are included in the pruned installation image. When the pruned image is installed, features that were removed do not appear in the installation GUI panels. After a pruned image is installed, the result is the same as if the user had selected only that subset of features during an installation from a full image. The end result of using the db2iprune utility is a new, smaller DB2 UDB installation image that can be installed using the regular DB2 UDB product installation methods.

How the db2iprune utility works v When the db2iprune utility is correctly invoked from the command line, the first thing it does is read the value of the PROD keyword from the db2iprune input file and confirm that a valid DB2 UDB product installation image for that product exists in the path that is specified with the -p parameter. v In a first pass through the input file, the db2iprune utility reads each COMP or LANG keyword, it queries the condition table in the .msi database to get the corresponding feature name, and then it builds a list of features that the customer wants to remove (called the removable features collection). v It then reads each COMP or LANG keyword again. It uses the value of this keyword to look up which feature it needs to remove by querying the condition table in the .msi database. It also verifies that this feature is selectable by validating that

11

it exists in the condition table. Only the features that are selectable based on the customer’s input exist in the condition table. v It then finds out which components belong to this feature by querying the FeatureComponents table. This table associates features with the components that belong to them. It verifies that none of the components belonging to this feature belong to another feature that does not exist in the condition table. It also verifies that none of these components belong to a feature that is not to be removed. It does so by verifying that any feature that this component belongs to is already in the removable features collection. This check is not required for language features since their components are not shared with other features. v The db2iprune utility queries the file table and retrieves the highest sequence in that table for a file in that component. Using this number, it looks up the media table to determine the .cabfile containing the files for that component and ensures that the .cabfiles to be deleted are writable, and it then deletes them. v In the final step, the db2iprune utility ensures that the features that have been pruned are invisible to the user and are not installable. It completes this function by making the installation level for the features equal to zero in the condition table (features with an install level of zero are invisible). This is not done for language features because they are always invisible. The db2iprune utility then invalidates any existing installation level in the condition table for this feature by making its condition false, thereby making the feature uninstallable.

Pruning a DB2 UDB product installation image

Procedure:

To prune a DB2 UDB product installation image using the db2iprune utility: 1. Open the input file, or .prn file, that is located in the \db2\windows\utilities\db2iprune directory, and uncomment all features and languages that you want removed from the DB2 UDB product installation image. Comments are denoted by an asterisk (*). The db2iprune input file contains 3 keywords: PROD, LANG, and COMP. v The PROD keyword identifies the DB2 UDB product installation image to be pruned. This keyword is required and should not be modified. v The LANG keyword is used to specify which languages to remove from the DB2 UDB product installation image. To remove the .cab files for a language, as well as the doc files in the installation image for this language, uncomment the equivalent LANG keyword. v The COMP keyword represents which features to remove from the DB2 UDB product installation image. To remove the .cab files for a feature, simply uncomment the equivalent COMP keyword. You can uncomment several COMP or LANG keywords in the same input file to remove several features or languages. The db2iprune input file behaves differently from the DB2 UDB product response files (used for unattended installations). The DB2 UDB product response file is used to specify components that you want to install, while the db2iprune input file is used to specify components that you want removed from the image and hence cannot be installed. 2. From the command line, execute the db2iprune.exe file using the following syntax: db2iprune.exe -r -p -o

where:

12 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

v the parameter following the -r switch determines the full path to the db2iprune input file. v the parameter following the -p switch determines the full path to the root directory of the source installation image. This directory contains the setup.exe file, and is also the root directory of the DB2 UDB product installation CD. v the parameter following the -o switch determines the full path to the location where the new DB2 UDB pruned product image is copied. Make sure that you have write access to this directory. For example, consider the following features selection panel from an unpruned DB2 UDB Run-time Client Version 8.2 installation image using the Custom installation option:

Next, consider the following changes made to the db2rtcl.prn input file for this installation image. In this input file the following LANG features are commented out and will be installed, whereas the COMP features are uncommented and will not be installed: v Languages commented: – CN (Chinese) – FR (French) – ES (Spanish) – JP (Japanese) v Components uncommented: – SYSTEM_BIND_FILES (System Bind Files are used by DB2 UDB for such things as database creation and accessing remote host databases) – LDAP_EXPLOITATION (Lightweight Directory Access Protocol (LDAP) Exploitation allows DB2 UDB to use an LDAP directory to store database directory and configuration information)

Chapter 4. Reducing the size of the DB2 UDB product installation image 13

– NETBIOS_DB2_CLIENT_SUPPORT (NetBIOS allows you to use the NetBIOS communication protocol to transfer data in a computer environment that contains clients and servers) – NPIPE_DB2_CLIENT_SUPPORT (Named Pipes allows you to use the Named Pipes communication protocol to transfer data in a computer environment that contains clients and servers) – APPC_DB2_CLIENT_SUPPORT (APPC allows you to use the APPC communication protocol to transfer data in a computer environment that contains clients and servers) * Sample input file for use with the db2iprune.exe utility * ------* * Comments are made by placing either a * or a # at the start of a line, or by * placing ** or ## after the start of a line to comment out the rest of that * line. * * To remove the .cab files for a feature, uncomment the equivalent COMP keyword, * to remove the .cab files for a language, as well as the doc files in the image * for this language, uncomment the equivalent LANG keyword. * The PROD keyword is required to identify the product and does not change *======PROD = RUNTIME_CLIENT LANG = AR LANG = BG LANG = BR *LANG = CN LANG = CZ LANG = DE LANG = DK LANG = FI *LANG = FR LANG = EL *LANG = ES LANG = HR LANG = HU LANG = IW LANG = IT *LANG = JP LANG = KR LANG = NL LANG = NO LANG = PL LANG = PT LANG = RO LANG = RU LANG = SE LANG = SL LANG = SK LANG = TR LANG = TW COMP = SYSTEM_BIND_FILES *COMP = MDAC *COMP = ODBC_SUPPORT *COMP = OLE_DB_SUPPORT *COMP = JDBC_SUPPORT *COMP = SQLJ_SUPPORT COMP = LDAP_EXPLOITATION *COMP = CLIENT_TOOLS *COMP = TCPIP_DB2_CLIENT_SUPPORT COMP = NETBIOS_DB2_CLIENT_SUPPORT COMP = NPIPE_DB2_CLIENT_SUPPORT COMP = APPC_DB2_CLIENT_SUPPORT *COMP = COMMAND_CENTER

14 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

To prune the DB2 UDB Run-time Client installation image based on these changes to the db2rtcl.prn input file, enter the following command at the command prompt: db2iprune.exe -r c:\db2rtcl.prn -p d:\RTCL\image -o d:\compact_rtcl where: v the db2iprune.exe file is located in the C:\ directory v the input file (db2rtcl.prn) is located in the C:\ directory v the DB2 UDB product setup.exe file is located in the d:\RTCL\image\ directory v the DB2 UDB Run-time Client image will be copied to the d:\compact_rtcl directory You should receive the following output in your command window:

Based upon these changes, when you install the new pruned installation image using the Custom installation option, you should see the following changes to the features selection panel for the DB2 UDB Run-Time Client (notice the

Chapter 4. Reducing the size of the DB2 UDB product installation image 15

footprint change from 6121 KB to 5057 KB):

3. Use any of the regular installation methods to install and maintain the pruned DB2 UDB product installation image: v DB2 Setup wizard installation: – For a TYPICAL installation, the regular TYPICAL components for that product are installed (minus the components removed by the db2iprune utility). – For a COMPACT installation, the regular COMPACT components for that product are installed (minus the components removed by the db2iprune utility). – For a CUSTOM installation, only the remaining components are displayed in the feature selection panel. The components removed by the db2iprune utility are not displayed as options to install. However, the removed languages will still be displayed in the language selection panel. Therefore, ensure that you do not select a language that you have removed from the image using the db2iprune utility. If you select a language that you have removed, you will receive an error message. v Response file installation: – If you specify INSTALL_TYPE=TYPICAL in the response file, all the typical components that are included in the pruned installation image are installed. – If you specify INSTALL_TYPE=COMPACT in the response file, the result is the same as if you had installed from a compact installation image, minus the pruned features. – If you specify INSTALL_TYPE=CUSTOM in the response file, only the components that are both in the pruned installation image and specified in the response file will be installed. If the response file specifies components that are not included in the pruned installation image, those components will be ignored.

16 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

– If you plan to use a response file for an unattended installation, ensure that you specify only the languages and features available in the DB2 UDB pruned product installation image. v FixPak installation: – Since DB2 UDB product FixPaks for Windows operating systems are full installation images, the db2iprune utility can be used with FixPak images as well. The FixPak application process is the same for full and pruned images. When the DB2 UDB product FixPak is installed it detects and updates only the components that were installed using the db2iprune utility and ignores any components that are not installed.

Note: If the db2iprune utility is used with a DB2 UDB product FixPak image, ensure that the FixPak image contains all of the components that were initially installed. If the FixPak image does not contain all the installed components, you will receive an error about missing .cab files when the FixPak application is attempted.

Chapter 4. Reducing the size of the DB2 UDB product installation image 17

18 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 5. Deployment of DB2 UDB products

You can use the following three methods to deploy DB2 UDB on Windows operating systems: v Deploying DB2 UDB products by running the unattended silent installation v Deploying DB2 UDB products using Microsoft Systems Management Server (SMS) 2003 v Deploying DB2 UDB products using Tivoli Software Distribution 4.2

Deploying DB2 UDB products by performing the unattended silent installation Although the DB2 Setup wizard is a Windows Installer based installation, a launcher executable (setup.exe) file is provided to make the command line parameters easier to use. During an unattended silent installation this executable file calls the Windows Installer with the proper command line parameters and properties that the Windows Installer needs to perform the installation.

Procedure:

To perform an unattended silent installation of DB2 UDB using the setup.exe file: 1. Enter the following command at the command prompt: setup.exe —u

Here is a complete list of the valid command line syntax and parameters for the setup command:

Command syntax:

setup -f -i language -l log_file -t trace_file

-u response_file -w -? -h

Command parameters: -f Forces any DB2 processes to stop before installing. -i language Two-letter language code of the language in which to perform the installation. -l log_file Full path and file name of the log file to use. -t trace_file Generates a file with install trace information. -u response_file Full path and file name of the response file to use. -w Keeps the parent process alive until the installation finishes.

19

-?, -h Generates usage information.

For example The following command will run a silent unattended installation with the log being written to the C:\db2logs directory: setup.exe –u \\server\\db2ese.rsp -l c:\db2logs\db2.log

As mentioned previously, for an unattended silent installation the important parameter is –u [response_file]. This parameter is used to run the installation in unattended mode. Along with the –u option, you must provide the full path to the response file that the DB2 Setup wizard will use to install and configure the computer. For more information on the response file please see the section called ″DB2 UDB product response files″ in this paper.

DB2 UDB Version 8.2 products do not require the –w parameter. However if you have an earlier version of the product installed you must provide the –w parameter to keep setup.exe from exiting before the installation has finished. If you do not do this, the exit code that is returned by setup.exe will not tell you whether the installation has completed successfully or not because the value is returned before the installation has finished.

You can choose to write the installation logs to an alternative location. You can do this by specifying the –l parameter to setup.exe with the full path to the file where logging information will be written to. Depending on your requirements for total installation time, you may also want to specify the –t parameter. This option creates a trace file, and also causes more details to appear in the log file. These files allow you to diagnose almost any problem without having to go through the effort of reproducing the problem. For more information on diagnosing installation problems refer to the scetion on Diagnosing problems with distributed installations in this paper.

Deploying DB2 UDB products using Microsoft Systems Management Server (SMS) 2003 With Microsoft Systems Management Server (SMS), you can set up the installation of DB2 UDB from a central location, and install it in an efficient and reliable manner across a computer network. SMS provides tools that automate deployment tasks, thereby reducing the amount of work that users have to perform.

This installation method is suitable for a mass deployment of DB2 UDB on a large number of client computers that are all based on the same setup. Use the following instructions to package and distribute DB2 UDB across your computer network using SMS: v Packaging DB2 UDB using SMS v Distributing DB2 UDB using SMS Once DB2 UDB has been distributed using SMS, it will automatically be installed on the clients on your computer network. Packaging DB2 UDB using SMS

Prerequisites: v You must have Microsoft SQL Server 2000 installed on the server that functions as the SMS primary site.

20 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

v You must have SMS 2003 installed and configured on your network for both your SMS 2003 server and your SMS 2003 client workstations. Refer to Microsoft’s Systems Management Server Concepts, Planning, and Deployment Guide and Microsoft’s Systems Management Server Operations Guide at http://www.microsoft.com/technet/downloads/sms.mspx for details on: – SMS 2003 platform and prerequisite information – Setting up SMS (including setting up the primary and the secondary sites) – Adding clients to the SMS 2003 system

Procedure:

To package DB2 UDB using SMS: 1. Copy the DB2 UDB Version 8.2 product installation image to a location where its contents can be edited. 2. Create a DB2 response file. Refer to the section ″DB2 UDB product response files″ in this paper for instructions on how to create one. 3. On an SMS 2003 distribution point server in your SMS 2003 environment, open the SMS Administrator Console by selecting Programs—>Systems Management Server—>SMS Administrator Console from the Start menu. 4. On the SMS Administrator Console, open the Site Database object tree and right-click Packages. Select New—>Package From Definition:

Chapter 5. Deployment of DB2 UDB products 21

5. When the Welcome to the Create Package from Definition Wizard opens, click Next:

6. When the Package Definition page opens, click Browse to search for the DB2 package definition file:

7. Select the desired db2*.pdf file from the list shown in the Browse window. By default this file is located in the db2\Windows\samples\ directory of the DB2

22 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

UDB installation image. Click Open:

8. The Package Definition page reopens, continuing the package definition of the DB2 UDB product you want to distribute. Click Next to continue the distribution:

Chapter 5. Deployment of DB2 UDB products 23

9. In the Source Files window, select the Create a compressed version of the source radio button. Click Next:

10. In the Source Directory window, select the Source directory location and the Source directory of the DB2 package. Select the appropriate Source directory location radio button to specify whether the source files are accessed from a local drive or from a remote network drive. In the Source directory field, type the directory name where the DB2 UDB product installation image resides. This is the directory containing the setup.exe file. Click Next:

24 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

11. To finish the creation of your SMS package, click Finish on the Completing the Create Package from Definition Wizard page:

Distributing DB2 UDB using SMS

Prerequisites: v You must have Microsoft SQL Server 2000 installed on the server that functions as the SMS primary site. v You must have SMS 2003 installed and configured on your network for both your SMS 2003 server and your SMS 2003 client workstations. Refer to Microsoft’s Systems Management Server Concepts, Planning, and Deployment Guide and Microsoft’s Systems Management Server Operations Guide at http://www.microsoft.com/technet/downloads/sms.mspx for details on: – SMS 2003 platform and prerequisite information – Setting up SMS (including setting up the primary and the secondary sites) – Adding clients to the SMS 2003 system

Procedure:

To distribute DB2 UDB using SMS: 1. After the package creation has finished, on the SMS Administrator Console, open the Site Database object tree and right-click Packages. Select All

Chapter 5. Deployment of DB2 UDB products 25

Tasks—>Distribute Software.

2. When the Welcome to the Distribute Software Wizard page opens, click Next:

26 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

3. In the Package page, select the Select an existing package radio button and select the package you want to distribute. Click Next:

4. When the Distribution Points page opens, select the distribution points for the package. Click Next:

Chapter 5. Deployment of DB2 UDB products 27

5. In the Advertise a Program page, select the radio button indicating that you want to advertise a program from this package. Click Next:

6. When the Select a Program to Advertise page opens, select the program to be advertised to the members of your distribution collection. Click Next:

7. When the Advertisement Target page opens, select either an existing collection of computers where you want to advertise and install the DB2

28 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

program selected, or create a new collection of computers. Click Next:

8. On the Advertisement Name page, type a name to identify the advertisement in the Name field. Adding comments is optional. Click Next:

Chapter 5. Deployment of DB2 UDB products 29

9. When the Advertise to Subcollections page opens, choose whether or not the advertisement should apply to subcollections of SMS clients. Click Next:

10. When the Advertisement Schedule page opens, specify when you want the program to be advertised to, and installed on, your SMS clients. Click Next:

30 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

11. When the Assign Program page opens, specify whether you want this program to become mandatory for your SMS clients. Click Next:

12. When the Completing the Distribute Package Wizard page appears, click Finish to advertise the program to your SMS clients:

Once DB2 UDB has been distributed using SMS, it will automatically be installed on the clients on your computer network.

Chapter 5. Deployment of DB2 UDB products 31

Deploying DB2 UDB products using Tivoli Software Distribution 4.2 Use the following information to create and distribute a DB2 UDB software package using the Tivoli Software Package Editor v4.2 and Tivoli Configuration Manager v4.2. For more detailed information about how to plan your Tivoli software distribution environment using Management Framework 4.1 and Tivoli Configuration Manager 4.2, refer to the following product documentation: v Tivoli User’s Guide for Software Distribution, at: http://publib.boulder.ibm.com/tividd/td/ConfigurationManager4.2.1.html v Tivoli Management Framework Planning for Deployment Guide, at: http://publib.boulder.ibm.com/tividd/td/framework/GC32-0803- 01/en_US/HTML/plantfrm.htm DB2 UDB software package creation options The Tivoli Software Package Editor provides a number of different tools to create software packages, such as the Software Package Editor, the AutoPack tool, the Microsoft Setup program tool, and the PDF Importer tool. Because DB2 UDB is a large product with various prerequisites and dependencies, some package creation methods are better than others. This section provides an overview of each of the different software package creation methods and explains how each works – or does not work – for DB2 UDB. Recommended methods for DB2 UDB software package creation v Manual package creation using the Software Package Editor. With this method, you manually add and configure package objects using the Tivoli Software Package Editor graphical tools. This method is straightforward for DB2 UDB because DB2 UDB has a self-contained, enhanced installer that can run unattended installations, automatically create installation logs, and perform its own installation checks. These installation checks include checks for supported platforms, available disk space, software prerequisites, and previously installed DB2 UDB products. This reduces the amount of package configuration that is required, which makes manual package creation a viable option. Creating a DB2 UDB software package using this method is a matter of pointing to the location of the DB2 UDB installation image and running the DB2 setup executable (setup.exe file) on the target computer. The DB2 installer takes care of everything else. v PDF Importer tool. The Tivoli PDF Importer tool is another good choice for creating a DB2 UDB software package. This tool maps data from a pre-existing Package Definition File (PDF) to software package properties, thus automating the package creation process. You can use this tool with DB2 UDB because DB2 UDB for Windows comes with a sample PDF file that contains the basic information that is required to create a software package and launch the DB2 installer at distribution time. Some minor modifications need to be made to the DB2 sample PDF and the resulting package in order to customize the package to your environment. The PDF Importer Tool is accessible from the standalone Software Package Editor that is installed on managed nodes and endpoint computers. Methods not recommended for DB2 UDB software package creation v AutoPack tool. The Tivoli AutoPack tool uses snapshot technology to capture the differences between the target system before and after installing a software product, it then creates a software package out of the differences it found. Although this is an effective tool for many different software products, it is not recommended for a large product like DB2 UDB. The AutoPack installer copies

32 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

files, directories, Windows profiles, Windows registry keys and values, Windows shell and Windows services to the target computer, but does not check for software prerequisites and previously installed DB2 UDB products. As a result, if the preparation computer is different from the target computer in any respect, you can run into problems related to missing files, software prerequisites, and incorrect configuration . v Import Microsoft Setup Program (MSI). This tool does work with DB2 UDB, but does not provide any added benefit. The DB2 MSI installer is identical to DB2 setup (setup.exe) except that the command line arguments are different. Using the Import Microsoft Setup Program tool in Tivoli saves you no time over adding an Execute Program action that points to the DB2 setup.exe file. Using this tool in fact may take longer than manually creating the software package. Creating software packages for installation using the Software Package Editor Redirected installation method In a redirected installation, the installation program is run from a remote source host. Because the installation image does not get copied to the target system at distribution time, package distribution is faster and less disk space is used up on the target system. At the time of writing, the DB2 UDB V8.2 installation image sizes range from about 13 MB (DB2 UDB Run-Time Client Lite) to 400 MB (DB2 UDB Enterprise Server Edition), so disk space requirements should be an important consideration when making this decision. A disadvantage to a redirected installation is that the installation occurs over a network connection, which means that the installation might take longer and be more unreliable if your network connection is slow or unreliable.

To create a DB2 UDB software package for a redirected installation you need to Add Execute Program actions that point to the DB2 UDB installation image, run the setup.exe command, and specify arguments to run an unattended installation. You might also need to create an Execute Program action that maps a remote network drive if the location of the DB2 installer is not already accessible from the target computer. Another option is to distribute a script that both maps the remote network drive and launches the DB2 installer.

In the following example, a software package will be created that does the following: v Mounts a remote network drive that contains the DB2 UDB installation image v Launches the DB2 installer v Disconnects the network drive after the DB2 UDB installation has completed

Note: Make sure you customize a DB2 response file prior to distribution. The DB2 sample response file is located in the \db2\Windows\samples directory of the product installation image. Refer to the section called ″DB2 UDB product response files″ in this paper for more instructions.

Mounting a remote network drive: Procedure:

To mount a remote network drive that contains the DB2 UDB installation image:

Chapter 5. Deployment of DB2 UDB products 33

1. Add an Execute Program by selecting Edit—>Insert—>Program—>Execute program from the Software Package Editor window:

34 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

2. Provide the path to the net.exe file. Double right-click in the Path field to bring up the Variable List Editor and select the system_dir variable:

3. Click the Advanced push button. This action brings up the Execute Program Properties — Advanced window. In the Arguments field, type use, the drive name, the server name and shared directory where the DB2 UDB product installation image resides, and the user ID and password to connect to the

Chapter 5. Deployment of DB2 UDB products 35

remote drive. The user ID must belong to a domain:

In this example, the DB2 UDB product installation image resides on the C:\ drive of the server winfvt27 (known as the source host). In the Arguments field, we have: use $(freedrive_01) \\winfvt27\c$ mypassword /user:db2installtest\db2admin

The source host and target computer belong to the db2installtest domain, and the userID db2admin has permissions to mount winfvt27 from the target computer. The $(freedrive_01) variable chooses the next available drive on the target system. Select a freedrive variable by double right-clicking the Arguments field to bring up the Variable List editor. In this example, we create an error file and an output file to ensure recovery of data if the remote drive mount fails..

36 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Note: Instead of using a mapped network drive, you may also choose to use a Universal Naming Convention (UNC) path. In the case where you choose UNC, you only need to ensure that the UNC path is accessible from the computer.

Starting the DB2 installer: Procedure:

To start the DB2 installer: 1. Add another Execute program to the software package by selecting Edit—>Insert—>Program—>Execute program from the Software Package Editor window. In the Path field, type the location of the DB2 setup executable file on the source host computer using the drive name of the remote network drive. Click the Advanced push button when you are finished:

Chapter 5. Deployment of DB2 UDB products 37

The Advanced push button opens up the following window:

2. In the Arguments field of this window, enter the following arguments: v -l This optional argument creates a DB2 installation log in the specified location. Although the DB2 installer automatically creates an installation log, db2.log, create another installation log using the -l argument so you can easily find the log file if a problem occurs. By default, Tivoli locates the log file in the My Documents\DB2LOG directory of the Tivoli user who installed the product. v -u This argument specifies the location of the DB2 response file. Make sure that you provide the full path name to the response file. v -w The -w argument ensures that the DB2 UDB installation has completed before exiting. Starting with DB2 UDB Version 8.2 products -w is set by default. For past versions of DB2 UDB this argument is mandatory for the package being creating because if it is not specified, Tivoli Software Distribution will attempt to disconnect the network drive before the DB2 UDB product installation has completed, which will cause the installation to fail.

38 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

For example, to create an installation log file in C:\temp using the customized response file that is located in the \db2\Windows\samples directory of the DB2 UDB installation image, enter the following arguments: -l C:\temp\rtclientv82.log –u $(freedrive_01)\distribution\RTCL\image\db2\Windows \samples\db2rtcl.rsp -w 3. Click OK to continue.

Disconnecting the network drive: Procedure:

To disconnect the network drive after the DB2 UDB installation has completed: 1. Add a third Execute program to the software package by selecting Edit—>Insert—>Program—>Execute program from the Software Package Editor window. In the Execute Program properties window, type the path name to the net.exe file in the Path field. Click the Advanced push button:

Chapter 5. Deployment of DB2 UDB products 39

2. In the Arguments field in the Execute Program Properties — Advanced window, type use /delete to disconnect the network drive:

40 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

The DB2 UDB software package is now ready for distribution. Distribute the package using the Profile Manager:

Bundled installation method In a bundled installation, the installation image gets copied to the target system at distribution time and the installation is run locally on the target system. Because files get copied, the software distribution takes longer and more disk space is consumed on the target system. The actual installation may be faster, however, because it is run locally from the installation image on the target computer.

To create a DB2 UDB software package for a bundled installation, you need to add a directory that contains the DB2 UDB installation image and an Execute program action that launches the installer. You should also consider adding a Check disk space system action to ensure that the target machine has enough disk space to store the installation image, as well as a Remove directory object that removes the installation image from the target computer after the installation has completed. In some cases, you may choose to keep the directory containing the installation image. For example, you might choose to keep the image available in case changes are required.

In the following example, a software package will be created for the DB2 UDB Application Development Client that does the following: v Checks the disk space v Adds a directory v Launches the DB2 installer v Removes a directory

Checking the disk space: Procedure:

To check the disk space:

Chapter 5. Deployment of DB2 UDB products 41

1. From the Software Package Editor window, select Edit—>Insert—>System action—>Check disk space:

2. In the Check Disk Space Properties window, type the destination drive for the DB2 UDB installation image in the Drive field, and the required disk space in the Volume field. Click OK:

Adding a directory: Procedure:

To add a directory:

42 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

1. Add the DB2 UDB installation image to the package by selecting Edit—>Insert—>Add object—>Directory from the Software Package Editor window. The Add Directory Properties window appears. In the Source fields, type the location and name of the installation image on the source host. In the Destination fields, type the location and name of where you want the installation image copied on the target system:

Chapter 5. Deployment of DB2 UDB products 43

2. Click the Advanced push button on the Add Directory Properties window. The Add File System Objects Properties — Advanced window appears:

3. Select the Descend directories checkbox on this window. This option copies the entire directory tree of the DB2 UDB installation image to the software package. If it is not selected, only the top-level directory is added and the installation will fail. 4. Click OK to continue.

Launching the DB2 installer: Procedure:

To launch the DB2 installer: 1. Add an Execute program action by selecting Edit—>Insert—>Program—>Execute program from the Software Package Editor window. In the Path field, type the location of the DB2 setup executable on the target computer. In the example, we plan to copy the installation image to the C:\distribution\ADCL\image directory on the target system. Therefore,

44 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

the path name would be C:\distribution\ADCL\image\setup.exe:

2. Click the Advanced button and enter the following arguments for a response file installation in the Arguments field: v -l This optional argument creates a DB2 installation log in the specified location. Although the DB2 installer automatically creates an installation log, db2.log, create another installation log using the -l argument so you can easily find the log file if a problem occurs. By dafault, Tivoli locates the log file in the My Documents\DB2LOG directory of the Tivoli user who installed the product. v -u This argument specifies the location of the DB2 response file. Make sure that you provide the full path name to the response file. v -w The -w argument ensures that the DB2 UDB installation has completed before exiting. Starting with DB2 UDB Version 8.2 products -w is set by default. For past versions of DB2 UDB this argument is mandatory for the package being creating because if it is not specified, Tivoli Software Distribution will attempt to disconnect the network drive before the DB2 UDB product installation has completed, which will cause the installation to fail. For example, to create an installation log file in C:\temp directory using the customized response file that is located in the \samples directory of the DB2 UDB installation image, enter the following arguments:

Chapter 5. Deployment of DB2 UDB products 45

-l C:\temp\db2adcl.log –u C:\distribution\ADCL\image\db2\Windows\samples \db2admcl.rsp -w

Removing a directory: Procedure:

To remove a directory: 1. Select Edit—>Insert—>Remove object—>Directory from the Software Package Editor window. 2. In the Remove Directory Properties window, enter the name of the directory to be removed, and select the Descend directories checkbox. This removes the entire directory tree from the target computer:

3. Click OK to continue.

The software package is now ready for a bundled distribution. Distribute the software package using the Tivoli Configuration Manager Profile Manager:

46 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Creating a DB2 UDB software package using the Package Definition File Importer tool Another way to create a DB2 UDB software package is to import the DB2 sample Package Definition File (PDF) into the Tivoli Software Package Editor by using the Tivoli PDF Importer tool. When the DB2 PDF gets imported into the Software Package Editor, the following objects are defined in a generic container: v Execute Program: Setup v Execute Program: Uninstall

If the installation is bundled, a directory object also gets added to the package, which contains the DB2 UDB installation image. The DB2 UDB installation image will get copied to the target machine at distribution time. The default Execute Program is specified in the Tivoli Import PDF wizard. This action gets executed by default when the software package is distributed.

Prerequisites: v Prior to using the PDF Importer tool, edit the sample DB2 PDF file which is located in the \db2\Windows\samples directory of the DB2 UDB installation image. v Modify the CommandLine value to specify the full path to the DB2 response file.

Procedure:

To create a DB2 UDB software package using the Package Definition File Importer tool: 1. Select Tools->Import->Import PDF from the standalone Software Package Editor window and follow the instructions in the wizard.

The resulting software package consists of a generic container containing a sequence of execute user programs, as shown in the following figure:

Chapter 5. Deployment of DB2 UDB products 47

Deploying DB2 UDB product FixPaks Plan the model that you will use to service your DB2 UDB products as early as possible. Planning helps to ensure that any upgrade that you need to install will be as simple as possible. FixPaks are used to service DB2 UDB and a new one is typically provided every 3-4 months.

FixPaks and the latest versions of all DB2 UDB Client products can be downloaded from the following location: www.ibm.com/software/data/db2/udb/support.html

Always read the FixPak readmes and the list of fixed APARs. These documents can be found in the same directory as the FixPak on the FTP site, or as links from the download Web Page. The readmes provide information on how to install the FixPak, and specific information about any known problems or workarounds. The readme should be consulted for any changes or additions that may occur as later FixPaks are released. This section provides only an overview for FixPak installation.

Procedure:

To deploy DB2 UDB product FixPaks: 1. Obtain the FixPaks that you need. You need to obtain a FixPak for any product that you have deployed to your computers. This is and important and mandatory action if you have more than one DB2 UDB product installed on a particular computer. If you have more than one DB2 UDB product installed on the same computer, you must download and uncompress all of the corresponding product-specific FixPaks before starting the FixPak installation process. In this kind of scenario all of the FixPaks that are installed on the computer must be available at the time of the FixPak installation because all of the DB2 UDB products on the system must remain at the same level. This is particularly important if you are using a bundled installation method in Tivoli where you need to copy potentially several installation images to the computer if you are not certain what DB2 UDB products may be on the system. If the DB2 Setup wizard does not have access to all of the images installed on the computer then it cannot continue. You will see a message in the log file like the following: The installation failed because not all of the fixpak images for the existing DB2 products: DB2 Application Development Client, DB2 Run-Time Client, could be found in the same location as the current install image. Please make sure the fixpak images for all existing DB2 products are located in the same parent directory.

The FixPaks should all be stored in the same location. This allows the installer to find the FixPaks for the products that it requires at the time of installation. All images must be uncompressed to subdirectories under the same parent directory. 2. Extract all of the FixPaks to the same directory on the server that you use to share the installation images. The FixPaks are in a self extracting zip file. The result looks something like this example: \\SERVER\FIXPAK ├───ADCL ├───ADMCL ├───CONEE ├───CONPE ├───CUBE ├───ESE ├───EXP ├───IINW

48 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

├───IIRW ├───QP ├───RTCL ├───WM └───WSE Once the FixPaks are extracted to the same directory, you can deploy them in a manner that is similar to how you initially deployed the product installation. 3. Construct a response file. If you do not require any changes to the initial installation, you can likely use the same response file that you used to deploy your initial installation. To construct a response file, you can start with the sample response file. This sample response file can be found in the \db2\windows\samples directory. In many cases the only option you need to change in the response file is to accept the license terms and conditions by specifying the keyword LIC_AGREEMENT=ACCEPT. If you want the installation to set additional database manager configuration parameters or profile registry variables you can specify them in the response file. One important keyword that you should specify in the response file is the KILL_PROCESSES=YES keyword unless you can guarantee that no DB2 libraries are in use. Alternatively, you can also specify the –f parameter to setup.exe. However, you should keep as many options as possible in the response file so the installation can be reproduced as consistently as possible. The KILL_PROCESSES keyword will stop any DB2 instances, and it will also kill any applications that may be accessing DB2 libraries. If you have applications that you don’t want to get killed ensure that these applications are not running at the time of installation.

Chapter 5. Deployment of DB2 UDB products 49

50 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 6. Diagnosing problems with distributed installations

Problems during installation can occur. These problems can be caused by network errors, operating system problems, or even hardware problems. This section gives you some of the information that you need to diagnose problems that can occur with the DB2 UDB installation.

Troubleshooting silent installations The first place to look for information when troubleshooting a silent installation is in the installation log files. This section describes some general techniques about using the log files to diagnose problems. Locating the installation log files The first step when diagnosing any problem is to first determine where the log files are located. There are two log files that are written to during the installation: v History log file. This log file contains a history of the current installation, as well as a history of all previous installations. This installation log file is not appended until the very end of the installation. The history log file can be specified by passing the –l parameter to the setup.exe that is used to launch the installation. If you do not specify the location for the log file, then it will be stored under the My Documents\DB2LOG directory of the user account the installation was run under. v Current installation log file. This log file contains the log of the current (or most recent) installation. Information is written to it as the installation events occur, unlike the history log file where the log is not actually written until the end of the installation. At the end of the installation the only difference between what is written to this log and what is written to the end of the history log file is that this log also contains a list of Windows Installer properties with current values. This list of properties is very long and is typically only looked at by DB2 service personnel. This log file is always called db2wi.log and it is in the same directory as the history log (My Documents\DB2LOG). Recording tracing information By default the installation log contains only basic information about the installation process. However, when you run the installation with tracing turned on the logging is done in verbose mode, thereby creating a log with much more information. Tracing can be turned on by specifying the –t parameter to setup.exe with a filename to setup.exe. For example: setup.exe –t c:\trace_file.txt

Do not confuse the trace file with the log file. They are different files. However, by turning trace on, you increase the logging level of the installation. If you are familiar with Windows Installer logging you will recognize that specifying the –t option causes the installation to run with /l*v. Reading the log files Depending on the problem you are trying to solve, all of the information in the log files may be useful, despite the complexity and amount of information contained in the files. The difficult part is narrowing down the problem and finding the parts of the log files that are most relevant to the problem. 51

Ensuring that the log you are reading is the correct log In many cases you may find yourself debugging an installation that you did not initiate. If you are unsure whether the log you are viewing is the correct log, there are some hints that you can use to verify that it is the correct log. The best way to determine this is to look at the time of the installation, as well as information about the product being installed. The product shown can be the product code or the path to the installation database used to install the product. If it is the path to the installation database, notice that the file name contains the name of the product. However, if it lists a globally unique identifier (GUID) for example, {D8F53726-C7AD-11D4-9155-00203586D551}, then it is a bit more difficult. Here is a list of the product codes for the DB2 UDB products that you can use to cross-reference information found in the product field.

Product ID code DB2 UDB Enterprise Server Edition {D8F53726-C7AD-11D4-9155-00203586D551} DB2 UDB Workgroup Server Edition {7A28F948-4945-4BD1-ACC2-ADC081C24830} DB2 UDB Personal Edition {C0AA883A-72AE-495F-9601-49F2EB154E93} DB2 Warehouse Manager {84AF5B86-19F9-4396-8D99-11CD91E81724} DB2 Datalinks Manager {1D16CA65-F7D9-47E5-BB26-C623A44832A3} DB2 Information Integrator Relational {273F8AB8-C84B-4EE6-85E7-D7C5270A6D08} Wrappers DB2 Connect Enterprise Edition {9C8DFB63-66DE-4299-AC6B- 37D799A728A2} DB2 Connect Personal Edition {F1912044-6E08-431E-9B6D-90ED10C0B739} DB2 Administration Client {ABD23811-AA8F-416B-9EF6-E54D62F21A49} DB2 Application Development Client {68A40485-7F7F-4A91-9AB6-D67836E15CF2} DB2 Run-time Client {63F6DCD6-0D5C-4A07-B27C- 3AE3E809D6E0} DB2 Spatial Extender {F6846BF9-F4B5-4BB2-946D-3926795D5749} DB2 Information Integrator Non-Relational {DD30AEB3-4323-40D7-AB39- Wrappers 735A0523DEF3} DB2 Warehouse Manager Connectors {5FEA5040-22E2-4760-A88C-73DE82BE4B6E} DB2 Query Patroller {7A8BE511-8DF3-4F22-B61A-AF0B8755E354} DB2 Cube Views {C8FEDF8F-84E8-442F-A084-0A0F6A772B52} DB2 UDB Express Edition {58169F10-CA30-4F40-8C6D-C6DA8CE47E16} DB2 Run-time Client Lite {07C9CEE7-4529-4E60-95D3-6B6EF6AC0E81}

For example, consider the following excerpt of a log file. The date on which the installation took place is November 7, 2003. The GUID is {D8F53726-C7AD-11D4- 9155-00203586D551} which matches the DB2 UDB Enterprise Server Edition: === Verbose logging started: 11/7/2003 15:40:03 Build type: SHIP UNICODE 2.00.3790.00 Calling process: C:\WINNT\system32\msiexec.exe === MSI (c) (8C:88): Resetting cached policy values MSI (c) (8C:88): Machine policy value ’Debug’ is 0 MSI (c) (8C:88): ******* RunEngine: ******* Product: {D8F53726-C7AD-11D4-9155-00203586D551} ******* Action: ******* CommandLine: **********

52 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Determining installation success or failure In some cases all you may be interested in is whether the installation was successful. To determine the success or failure of an installation look at the end of the log file for a line that looks like the following: MSI (s) (98:8C): Product: DB2 Enterprise Server Edition -- Installation operation completed successfully.

Likewise, if the installation failed, look for a line at the end of the log file that looks like the following: MSI (s) (40:10): Product: DB2 Enterprise Server Edition -- Installation operation failed. Diagnosing major errors If you received a failure the next step is to determine the cause of the failure. A general tip that allows you to find the error quickly is to search for Return value 3 in the log file. Once you find this in the log file you will usually see further text detailing what the problem is. In some cases the error comes directly from Windows Installer. In these cases the error can be difficult to understand, but there are methods to get more information about the error. In some cases you may only be presented with an error number along with some strings separated by commas. You can look up these error types directly from the Microsoft Web site at http://www.msdn.microsoft.com Diagnosing minor errors In some cases the installation may complete successfully but with the occurrence of a minor configuration error. When these types of errors occur it means that the installation completed, however an error occurred during the configuration stage of the installation. When this occurs the installation exit code will be set to 1. The most common place to look for these types of errors is during the execution of the action that performs most of the up and running operations. The output from this task can be found by searching for a line that looks like the following: MSI (s) (98:8C): Executing op: CustomActionSchedule(Action=DeferredCallURE_CA, ActionType=3137,Source=BinaryData,Target=CallURECA,)

The up and running portion of the installation which runs during the Custom Action DeferredCallURE_CA is organized into tasks. The success status of each is reported to the log which can be used to determine if the task was successful, or if a problem occurred. A successful task will output a line in the log file that looks like the following: 1: Creating/migrating DB2 instances:...... Success

Alternatively, if the task failed you would see a line that looks like the following: 1: Creating/migrating DB2 instances:...... Failure

If you need to find more information about a particular task that failed, or for further details about what the task did, you can look at the lines immediately before the overall result of the task. The following example shows that an instance "DB2" was created successfully, and that some DBM Config variables were set. Depending on the options that are in the response file, the output that is in the log file will vary. For example: 1: The instance "DB2" has been created successfully.

1: The value "SVCENAME=db2c_DB2" was set in the DBM CFG file for the "DB2" instance.

1: The value "DB2COMM=TCPIP" was set in the Profile Registry for the "DB2"

Chapter 6. Diagnosing problems with distributed installations 53

instance.

1: Creating/migrating DB2 instances:...... Success Response file errors Some of the most common problems are with the response file. The most common response file problem is that the installation cannot find the response file that was specified by the -u option of setup.exe because the location was specified incorrectly. In a case like this you would see lines in the log file that look like the following: Action start 0:23:55: DetectAndSetInstallPathCA. Action ended 0:23:55: DetectAndSetInstallPathCA. Return value 1. Action start 0:23:55: InitSilentInstallCA. 1: Failed to access the response file: "c:\db2ese.rsp". Action ended 0:23:55: InitSilentInstallCA. Return value 3. Action ended 0:23:55: INSTALL. Return value 3.

Right before the Return Value 3, which shows that the action InitSilentInstallCA failed, you can see some information about the error. In this case the response file c:\db2ese.rsp cannot be accessed because the path does not exist. This problem can be corrected by simply correcting the response file path given in the -u parameter to setup.exe. Another possible cause of response file installation failure can be that the user running the installation does not have permission to access the file. Keyword errors One type of error that can occur is caused by an invalid keyword in the response file installation. The response file that is passed into the installation is validated for two main types of problems before the installation begins. The first type of validation that occurs is for syntax. Certain keywords have length limits, or accept only certain values. If an invalid value is specified for a keyword, or if a keyword is entered that is not recognized, the installation will exit. The second type of validation is semantic. At this stage values are checked to make sure they are compatible with the system and with each other. This stage is only performed if the syntax checking does not find any errors. Keyword syntax validation Response file validation is done during the InitSilentInstallCA custom action. To find this you can either search for this method directly (if you know that the problem was with a keyword), or you can use the method described above by searching for Return Value 3. The following examples illustrate some of the error types that might be displayed as a result of the response file syntax validation: MSI (s) (40:54): Doing action: InitSilentInstallCA Action start 0:27:58: InitSilentInstallCA. MSI (s) (40:54): Creating MSIHANDLE (5120) of type 790542 for thread 1876 1: ERROR:A Response file error occurred. The value "INVALID_VALUE" is not valid for the keyword "KILL_PROCESSES".

1: ERROR:A Response file error occurred. Unknown keyword "THIS_IS_AN_INVALID_KEYWORD" at line "116".

1: ERROR:One or more errors occurred while checking the syntax of the response file "c:\db2ese.rsp". Please correct the errors and run the install again.

1: ERROR:Unable to set the response file "c:\db2ese.rsp" in the up and running engine.

1: Failed to initialize silent install. Action ended 0:28:05: InitSilentInstallCA. Return value 3.

54 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

In the above example the keyword for KILL_PROCESSES is given a value of INVALID_VALUE, however the only values accepted are YES or NO. The keyword THIS_IS_AN_INVALID_KEYWORD was also in the response file, however this is not recognized by the DB2 Setup wizard. Response file semantic validation Semantic response file validation is also done during the InitSilentInstallCA custom action. The errors that occur during the semantic validation are displayed in the log file. After reading the errors that are in the log file it should be apparent what needs to be corrected. For example: Action start 1:51:02: InitSilentInstallCA. 1: ERROR:The TCP/IP entries are invalid. Please specify a valid service name and port number.

1: ERROR:The response file specified "c:\db2ese.rsp" is not valid.

1: Failed to initialize silent install. Action ended 1:51:03: InitSilentInstallCA. Return value 3.

In this example, the log file indicates that the TCP/IP entries specified in the response file are not valid. The combination of service name and port number conflicted with values that were already on the system. The WiLogUtl.exe file tool Microsoft provides a tool (WiLogUti.exe) that provides assistance in analyzing installation log files. This tool is included in the Windows Installer SDK, which can be obtained from the following location: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/.

Once you launch this tool, you can click the ellipsis button (...) and browse to the log you want to view. You can then click the Analyze push button and the utility will analyze the log file for information. Here is what the tool looks like after it has

Chapter 6. Diagnosing problems with distributed installations 55

analyzed an installation log file:

Although you can browse through a lot of information in the log, the most useful portion is the error window which allows an easy way to cycle through the errors found in the installation. Another useful option is to view the log in HTML using the HTML Log push button. This displays the log files with syntax highlighting, making the log files easier to read. The tool also has a useful document on how to generically read Windows Installer logs.

56 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

Chapter 7. Notices

IBM may not offer the products, services, or features discussed in this document in all countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user’s responsibility to evaluate and verify the operation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to: IBM Director of Licensing IBM Corporation North Castle Drive Armonk, NY 10504-1785 U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property Department in your country/region or send inquiries, in writing, to: IBM World Trade Asia Corporation Licensing 2-31 Roppongi 3-chome, Minato-ku Tokyo 106, Japan

The following paragraph does not apply to the United Kingdom or any other country/region where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions; therefore, this statement may not apply to you.

This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice.

Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product, and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you.

57

Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information that has been exchanged, should contact: IBM Canada Limited Office of the Lab Director 8200 Warden Avenue Markham, L6G 1C7 CANADA

Such information may be available, subject to appropriate terms and conditions, including in some cases payment of a fee.

The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement, or any equivalent agreement between us.

Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems, and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements, or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility, or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.

All statements regarding IBM’s future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only.

This information may contain examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious, and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental.

COPYRIGHT LICENSE:

This information may contain sample application programs, in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM for the purposes of developing, using, marketing, or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs.

Each copy or any portion of these sample programs or any derivative work must include a copyright notice as follows:

58 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems

© (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. © Copyright IBM Corp. _enter the year or years_. All rights reserved.

Trademarks The following terms are trademarks of International Business Machines Corporation in the United States, other countries, or both, and have been used in at least one of the documents in the DB2 UDB documentation library.

ACF/VTAM iSeries AISPO LAN Distance AIX MVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data AS/400 NetView BookManager OS/390 C Set++ OS/400 C/370 PowerPC CICS pSeries Database 2 QBIC DataHub QMF DataJoiner RACF DataPropagator RISC System/6000 DataRefresher RS/6000 DB2 S/370 DB2 Connect SP DB2 Extenders SQL/400 DB2 OLAP Server SQL/DS DB2 Information Integrator System/370 DB2 Query Patroller System/390 DB2 Universal Database SystemView Distributed Relational Tivoli Database Architecture VisualAge DRDA VM/ESA eServer VSE/ESA Extended Services VTAM FFST WebExplorer First Failure Support Technology WebSphere IBM WIN-OS/2 IMS z/OS IMS/ESA zSeries

The following terms are trademarks or registered trademarks of other companies and have been used in at least one of the documents in the DB2 UDB documentation library:

Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.

Intel and Pentium are trademarks of Intel Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Chapter 7. Notices 59

UNIX is a registered trademark of The Open Group in the United States and other countries.

Sleepycat and the names of Sleepycat Software products referenced herein are trademarks, registered trademarks or service marks of Sleepycat Software, Inc.

Other company, product, or service names may be trademarks or service marks of others.

60 Mass deployment of DB2 Universal Database Version 8.2 on Microsoft Windows operating systems



Printed in USA