LDP/LDP/howto/docbook/DB2-HOWTO.xml

3056 lines
152 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
<!ENTITY colon "&#x003A;"> <!-- COLON -->
<!ENTITY dollar "&#x0024;"> <!-- DOLLAR SIGN -->
<!ENTITY mdash "&#x2014;"> <!-- EM DASH -->
<!ENTITY ndash "&#x2013;"> <!-- EN DASH -->
<!ENTITY reg "&#x00AE;"> <!-- REGISTERED TRADEMARK -->
<!ENTITY trade "&#x2122;"> <!-- TRADEMARK -->
]>
<article id="index">
<!-- CVS revision info: $Id$ -->
<articleinfo>
<title>IBM DB2 Express-C for Linux HOWTO</title>
<author>
<firstname>Ian</firstname>
<surname>Hakes</surname>
<email>db2howto@gmail.com</email>
</author>
<revhistory id="revhistory">
<revision>
<revnumber>2.0</revnumber>
<date>2007-07-15</date>
<authorinitials>idmh</authorinitials>
<revremark>Complete revision of document to cover DB2 Express-C 9 and new
Linux distrubution levels</revremark>
</revision>
<revision>
<revnumber>2.0.1</revnumber>
<date>2007-08-22</date>
<authorinitials>idmh</authorinitials>
<revremark>Minor update to include instance restart instructions for
Ubuntu 7.04</revremark>
</revision>
</revhistory>
<abstract>
<para>This HOWTO is intended for anyone interested in installing and
using the IBM DB2&reg; Express-C 9 database on a Linux&reg; operating
system. The aim of this document is to provide additional support and
specific distribution details to get you up and running with DB2 on your
Linux distribution of choice.</para>
</abstract>
</articleinfo>
<sect1 id='introduction'>
<title>Introduction</title>
<sect2>
<title>Who should read this HOWTO</title>
<para>This HOWTO is intended for anyone interested in installing and
using IBM DB2&reg; Express-C 9 on a Linux&reg; distribution. The goal is
to include as many distributions as possible, on both 32&ndash;bit and
64&ndash;bit architectures, however both hardware and time resources are
constrained, so if you come across a distribution/architecture combination
that isn't covered in here or if you encounter a problem that isn't
addressed, send a note to db2howto@gmail.com and I'll try to help verify or
resolve your issue and add the information here.</para>
<para>The information found in this document is based on personal experiences
installing and configuring IBM DB2 9 Express-C.</para>
</sect2>
<sect2>
<title>Disclaimer</title>
<para>No liability for the contents of this document is accepted.
Use the concepts, examples and information at your own risk. There may
be errors and inaccuracies that could be damaging to your system.
Proceed with caution, and, although it is highly unlikely that accidents
will happen because of following advice or procedures described in this
document, the author does not take any responsibility for any damage
claimed to be caused by this document.</para>
<para>All copyrights are held by their by their respective owners,
unless specifically noted otherwise. Use of a term in this document
should not be regarded as affecting the validity of any trademark or
service mark. Naming of particular products or brands should not be seen
as endorsements.</para>
<para>This HOWTO is not official IBM documentation, and cannot be
construed as such. IBM accepts no responsibility, liability or coverage
for the material or instructions contained in this HOWTO. The views
expressed in this document are those of the author, and not IBM
Corporation.</para>
</sect2>
<sect2>
<title>Copyright and license</title>
<para>Copyright (c) 2007 IBM Corporation.</para>
<para>Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version
1.2 or any later version published by the Free Software Foundation; with
the Invariant Sections being "Disclaimer" and "About the Authors". This
document is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without ebaseven the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. A copy of the license is included
in the section entitled "GNU Free Documentation License".</para>
</sect2>
<sect2>
<title>Credits</title>
<para>Ian Hakes is the current owner and maintainer of this HOWTO.
Please send all suggestions for improvement, criticisms or questions to
db2howto@gmail.com.</para>
<para>As always, big thanks to Dan Scott, who continues to be an
invaluable resource to both myself and the open source community at
large.</para>
<para>I'd also to thank: Rav Ahuja, Boris Bialek, Jason Chan, Ryan Chase,
Irina Delidjakova, Leon Katsnelson, and Darin McBride for their support,
input and patience while putting this document together.</para>
<para>Most of all, I must thank my wife and children for allowing me to spend
weeknights and weekends on my laptop and test machines
getting this document together. I couldn't have done it without their
love and support.</para>
</sect2>
<sect2>
<title>About the author</title>
<para>Ian Hakes, has worked for IBM DB2 since 1999. Currently,
he is involved in technical marketing for the DB2 Express-C product,
developing technical documentation and evangelizing DB2 Express-C.
Before that, he was the technical team lead for the DB2 Information
Development department, and the writer responsible for the DB2 SQL
Reference manual. His free time is spent mainly typing on computers,
thinking about how much nicer it would be to watch a movie or to be
sailing.</para>
</sect2>
</sect1>
<sect1 id='whyexpc9'>
<title>Why DB2 Express-C 9?</title>
<para>In March of 2006, IBM made a strategic decision to release their best
of breed DB2 database as freely available software. It is important to
realize that the DB2 Express-C edition is a gratis, "free as in beer" software product,
meaning that, although the source code is not distributed as part of the product,
this edition of DB2 is freely useable and full featured, not "crippled" in any way.
</para>
<para>A number of other large enterprise class databases have also opted to
release versions of their software, but DB2 Express-C is the only one that
places no restrictions on the size or number of the databases that can be
created. The one restriction to using DB2 Express-C is that it can only be run
on systems with 2 physical CPUs and 4 GB of RAM. Since the majority of
developers and small businesses run systems within these specifications, DB2
Express-C makes a great choice for developers and business applications.
In this HOWTO, all testing and discussions are based on machines that fall
within these system specifications.
</para>
<para>With DB2 Express-C, you get a free, low maintenance database application
that is easy to install and run, with a number of powerful features, as well
as performance typically found in much more expensive enterprise-level
database software.
</para>
</sect1>
<sect1 id='whatsinexpc9'>
<title>What's included in DB2 Express-C 9</title>
<para>
Feature-wise, what's included in the DB2 Express-C download is impressive. To
start with, you get the same database engine code as the full enterprise-level
database server, with no connection restrictions. Also included is the full
suite of commmand line and graphical user tools to help adminster databases
and develop database applications. You also get autonomic maintenance features,
along with development APIs and drivers for C/C++, Java, PHP, Perl and Ruby on
Rails.
</para>
<para>The cherry on top is the inclusion of IBM's new pureXML&trade;
hybrid technology that allows you to store XML data natively inside the
database, without any shredding or decomposition of the data. This is a
feature that is typically an add-on to the other editions of DB2 9, and IBM is
giving it to users of the Express-C edition completely free of charge. Sometimes
it's good to be the little guy.
</para>
<para>There are three architecture choices available for Linux: the 32-bit version, the
64-bit version, and the PowerPC version, giving you the option of using the best
hardware you have available for your DB2 installation.
</para>
</sect1>
<sect1 id='prerequisites'>
<title>Prerequisites</title>
<para>Prerequisites are the hardware and software elements needed on your
system before you can install and use DB2 Express-C 9. This section covers:
</para>
<itemizedlist>
<listitem>
<para>Hardware requirements:</para>
<itemizedlist>
<listitem><para>Supported processors</para></listitem>
<listitem><para>Disk space requirements</para></listitem>
<listitem><para>Memory requirements</para></listitem>
</itemizedlist>
</listitem>
<listitem>
<para>Software requirements:</para>
<itemizedlist>
<listitem><para>Linux distributions</para></listitem>
<listitem><para>Kernel levels and libraries requirements</para></listitem>
<listitem><para>Additional software requirements</para></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
<sect2>
<title>Hardware requirements</title>
<sect3>
<title>Supported processor architectures</title>
<itemizedlist>
<listitem><para>x86 (32-bit processor)</para></listitem>
<listitem><para>x86&ndash;64 (64-bit processor)</para></listitem>
<listitem><para>POWER&trade; (any iSeries&trade; or pSeries&reg; that
supports Linux)</para></listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Disk space requirements</title>
<para>Take into account the disk space requirements before you install and
configure DB2 on your distribution:
<table>
<title>Disk space requirements</title>
<tgroup cols="3">
<colspec colname="COL1"></colspec>
<colspec colname="COL2"></colspec>
<colspec colname="COL3"></colspec>
<thead>
<row>
<entry valign="top" colname="COL1"><para>Install type</para></entry>
<entry valign="top" colname="COL2"><para>Description</para></entry>
<entry valign="top" colname="COL3"><para>Required disk
space</para></entry>
</row>
</thead>
<tbody>
<row>
<entry colname="COL1"><para>Typical</para></entry>
<entry colname="COL2"><para>DB2 is installed with most features
and functionality, including graphical tools such as the Control
Center.</para></entry>
<entry colname="COL3"><para>460 to 560 MB</para></entry>
</row>
<row>
<entry colname="COL1"><para>Compact</para></entry>
<entry colname="COL2"><para>DB2 is installed with basic features
and functionality, but without the graphical tools.</para></entry>
<entry colname="COL3"><para>380 to 460 MB</para></entry>
</row>
<row>
<entry colname="COL1"><para>Custom</para></entry>
<entry colname="COL2"><para>This option allows you to select the
features and functionality that you want to install.</para></entry>
<entry colname="COL3"><para>320 to 820 MB</para></entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>It's important to allocate enough disk space for the software, along
with the product documentation (if desired) and the databases you create.
</para>
<para>
In DB2 9, product documentation is accessed through the DB2 Information
Center, either via the web, or as a local system installation. To install
this locally requires at least 100 MB when installing the core English
language files. Additional space is required for other additional languages. If
disk space is an issue, you can configure DB2 to access the Information
Center from the Web. More detail about this is provided in
<xref linkend="help" endterm="help.title" />.
</para>
</sect3>
<sect3>
<title>Memory requirements</title>
<para>We recommend that you should allocate a minimum of 512 MB of RAM for
DB2 Express-C 9, and additional memory should be allocated for other
software and communication processes. When determining memory
requirements, consider the following points:
<itemizedlist>
<listitem>
<para>Your SWAP space should be at least twice as much as your RAM.</para>
</listitem>
<listitem>
<para>Additional memory should be allocated for any non-DB2 software
that may be running on your system.</para>
</listitem>
<listitem>
<para>Additional memory is necessary to support database clients and
database activity.</para>
</listitem>
<listitem>
<para>These memory requirements will be affected by the size and
complexity of your database system, as well as specific performance
requirements.</para>
</listitem>
<listitem>
<para>The maximum RAM allowed for a DB2 Express-C installation is 4 GB.</para>
</listitem>
</itemizedlist>
</para>
</sect3>
</sect2>
<sect2>
<title>Software requirements</title>
<sect3>
<title>Distribution levels that are supported by DB2 Express-C 9</title>
<para>For a list of all the distributions that are officially
supported, as well as the latest information about kernels, libraries,
integrated cluster environments, and papers, visit the <ulink
url="http://www.ibm.com/software/data/db2/linux/validate/">DB2 for Linux
validation</ulink> web site listed in <xref linkend="resources"
endterm="resources.title" />.
</para>
</sect3>
<sect3>
<title>Additional software requirements</title>
<para>Depending on your DB2 requirements, you may be required to install
additional software packages for DB2 to function properly. Make sure that
these software packages are installed prior to using DB2.
<itemizedlist>
<listitem>
<para>X Window System software, capable of rendering a graphical
window manager (KDE, Gnome, etc.). You will need this if you want to
use the DB2 graphical installer, or any of the DB2 graphical
tools.</para>
</listitem>
<listitem>
<para>A web browser, to view topics in the DB2 Information
Center.</para>
</listitem>
<listitem>
<para>If you are using NIS or NIS+ for security
authentication on your system, you must create DB2 user accounts
before installing DB2.</para>
</listitem>
<listitem>
<para>Additional packages, as outlined in the following table:
<table>
<title>Package requirements</title>
<tgroup cols="3">
<colspec colname="COL2" colwidth="48*"></colspec>
<colspec colname="COL3" colwidth="75*"></colspec>
<colspec colname="COL4" colwidth="173*"></colspec>
<thead>
<row>
<entry valign="top" colname="COL2"><para>Package name</para></entry>
<entry valign="top" colname="COL3"><para>RPM name</para></entry>
<entry valign="top" colname="COL4"><para>Description</para></entry>
</row>
</thead>
<tbody>
<row>
<entry colname="COL2"><para>compat-libstdc++</para></entry>
<entry colname="COL3"><para>compat-libstdc++</para></entry>
<entry colname="COL4"><para>Required by 64-bit
architectures only. Required for backwards compatibility
with standard C++ libraries used by DB2.</para></entry>
</row>
<row>
<entry colname="COL2"><para>nfs-utils</para></entry>
<entry colname="COL3"><para>nfs-utils (version 1.0 or later)</para></entry>
<entry colname="COL4"><para>Network File System support
package. It allows access for local files to remote
machines. Required for systems utilizing NFS mounted
drives.</para></entry>
</row>
</tbody>
</tgroup>
</table>
To check whether you have these packages installed, use the
<command>rpm -q</command> commands:
<screen>rpm -qa compat-libstdc++*</screen>
</para>
<para>To install these packages on Red Hat Linux, use the Red Hat
Linux installation CDs and the <command>rpm</command> command, or
the <command>up2date</command> utility. For example, to install
the compat-libstdc++ package from the Red Hat Linux CD, mount the
Red Hat Linux CD #4, and enter this command as root:
<screen>rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-libstdc++-296-2.96-132.7.2.i386.rpm</screen>
To install using the up2date package, run this command as root:
<screen>up2date compat-libstdc++</screen>
</para>
<para>To install these packages on SUSE Linux, you can also use
<command>rpm</command> or use the handy YaST (Yet another Setup
Tool) utility. For example, to install nfs-utils on SLES 9
using YaST:
<orderedlist>
<listitem><para>Log on as root</para></listitem>
<listitem><para>From the YaST Control Center, select Software ->
Software Management, then use the search "nfs-utils" to find the
appropriate packages.</para></listitem>
</orderedlist>
</para>
</listitem>
</itemizedlist>
</para>
</sect3>
</sect2>
</sect1>
<sect1 id='planning'>
<title>Installation considerations and planning</title>
<para>After verifying that your system meets the basic requirements, you should
plan your installation by considering installation methods and the creation
of users and groups:
<itemizedlist>
<listitem>
<para>Installation choices:</para>
<itemizedlist>
<listitem><para><command>db2setup</command> installation</para></listitem>
<listitem><para><command>db2_install</command> installation</para></listitem>
<listitem><para>DB2 response file installation</para></listitem>
</itemizedlist>
</listitem>
<listitem>
<para>User and group setup:</para>
<itemizedlist>
<listitem><para>User and group requirements</para></listitem>
<listitem><para>Creating users</para></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</para>
<sect2>
<title>Installation methods</title>
<para>After downloading and extracting the tar.gz file, the file tree looks
like this:
<screen>exp/ -|
disk1/ -|
db2_install (* command line installation script *)
db2setup (* GUI installation launcher *)
installFixPack (* not applicable for Express-C *)
db2/ -| (* installation and licensing files *)
doc/ -| (* install instructions and release notes *)</screen>
</para>
<para>You can use three methods to install DB2:
<itemizedlist>
<listitem><para><command>db2setup</command> utility</para></listitem>
<listitem><para><command>db2_install</command> utility</para></listitem>
<listitem><para>a DB2 response file</para></listitem>
</itemizedlist>
Each method has its own advantages and disadvantages. The choice of method
depends on your level of expertise and type of environment, but in
general, if a graphical interface is available, using
<command>db2setup</command> is recommended for ease of installation.
</para>
<sect3>
<title>db2setup installation</title>
<para>The <command>db2setup</command> command starts the DB2 Launchpad, a
graphical tool that configures and organizes the DB2 installation. It lays
down the DB2 filesets, creates and configures DB2 instances, users and
groups, communications, the administration database used by the DB2 Tools,
and sets up notification processes. The DB2 Launchpad also allows
you to create a response file for replicating a particular setup to other
systems.</para>
<para>Using <command>db2setup</command> is the best method for less
experienced users, because most of the configuration is automatically
performed during the installation. As mentioned previously, you require an
X Window System capable of rendering a graphical user interface to use
<command>db2setup</command> successfully.</para>
</sect3>
<sect3>
<title>db2_install installation</title>
<para>The <command>db2_install</command> command script installs all DB2
packages on your Linux system. This method is reliable and commonly used
by expert users for installing DB2 on larger, more complex systems.
However, tasks such as setting up users and groups, creating instances,
tools catalog database creation, and notification setup need to be
performed manually after the installation is completed.</para>
<para>One limitation to <command>db2_install</command> is that it only
installs user assistance (like help, messages, and tool interfaces) in
English, whereas <command>db2setup</command> supports the installation of
additional languages. Also, a <command>db2_install</command>
installation can take longer (because of the higher number of manual
configuration tasks); it requires a higher level of knowledge and skill,
and it cannot be used to create response files.</para>
</sect3>
<sect3>
<title>Response file installation</title>
<para>A response file can be created using the DB2 Setup Wizard or by
editing an existing DB2 response (.rsp) file. It allows you to install DB2
across multiple machines with consistent installation and configuration
settings. A response file installation is fast, because it bypasses the
graphical wizard configuration. Another advantage of
using a response file instead of the <command>db2_install</command>
command is that it creates a Database Administration Server (DAS) on each
machine, while with
<command>db2_install</command> the DAS must be created manually after
installation.</para>
<para>There is a sample response file (db2exp.rsp) included on the installation image
that can be modified and used to install DB2, configure users, create
instances, set up notification, create the tools catalog, and configure a
large number of database management parameters. This is the quickest
installation method if you already have all the information you need.
Unlike
<command>db2setup</command>, the response file installation is not
interactive, and it takes longer to prepare the response file initially.</para>
</sect3>
</sect2>
<sect2>
<title>User and group setup</title>
<para>DB2 requires user IDs and groups for database authentication. This
section discusses these IDs and groups and how to create them.</para>
<sect3>
<title>User and group requirements</title>
<para>DB2 requires a minimum of three users and groups: an instance owner,
a fenced user, and the Database Administration Server (DAS) user. You may
use the default names provided by the setup utilities, or specify your own
user and group names. For example, consider the following default user IDs
and group names produced by the DB2 Setup Launchpad:
<table>
<title>Default user IDs and group names</title>
<tgroup cols="4">
<colspec colname="COL1"></colspec>
<colspec colname="COL2"></colspec>
<colspec colname="COL3"></colspec>
<colspec colname="COL4"></colspec>
<thead>
<row>
<entry valign="middle" colname="COL1" align="center">
<para>Required user</para>
</entry>
<entry valign="middle" colname="COL2" align="center">
<para>User name</para>
</entry>
<entry valign="middle" colname="COL3" align="center">
<para>Group name</para>
</entry>
<entry valign="middle" colname="COL4" align="center">
<para>Description</para>
</entry>
</row>
</thead>
<tbody>
<row>
<entry colname="COL1"><para>Instance owner</para></entry>
<entry colname="COL2"><para>db2inst1</para></entry>
<entry colname="COL3"><para>db2grp1</para></entry>
<entry colname="COL4"><para>Administers a DB2 instance</para></entry>
</row>
<row>
<entry colname="COL1"><para>Fenced user</para></entry>
<entry colname="COL2"><para>db2fenc1</para></entry>
<entry colname="COL3"><para>db2fgrp1</para></entry>
<entry colname="COL4"><para>Responsible for executing "fenced" user
defined functions, such as JDFs and stored procedures.</para></entry>
</row>
<row>
<entry colname="COL1"><para>DAS user</para></entry>
<entry colname="COL2"><para>dasusr1</para></entry>
<entry colname="COL3"><para>dasadm1</para></entry>
<entry colname="COL4"><para>Administers the DB2 Administration
Server</para></entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</sect3>
<sect3>
<title>Creating users</title>
<para>You must have root authority to create users and groups. There are
three ways to create a DB2 user ID:
<itemizedlist>
<listitem>
<para>DB2 Launchpad: the DB2 Launchpad installation creates all of
the required users and groups for you during installation. The
default users and groups that get created are displayed in the
table above. This method also gives you the option to specify
your own user and group names.</para>
</listitem>
<listitem>
<para>Response file: Users can also be created during a response
file installation if you specify user and group information in the
response file. For example, consider the following entries in a
response file that create the three required users and groups for
DB2:
<programlisting>
* DAS user
DAS_USERNAME = dasusr1
DAS_GROUP_NAME = dasadm1
DAS_HOME_DIRECTORY = /home/dasusr1
DAS_PASSWORD = ******
* Instance-owning user
inst1.NAME = db2inst1
inst1.GROUP_NAME = db2grp1
inst1.HOME_DIRECTORY = /db2home/db2inst1
inst1.PASSWORD = ******
inst1.AUTOSTART = YES
inst1.AUTHENTICATION = SERVER
inst1.SVCENAME = db2c_db2inst1
inst1.PORT_NUMBER = 50001
inst1.FCM_PORT_NUMBER = 60000
inst1.MAX_LOGICAL_NODES = 4
* Fenced user
nst1.FENCED_USERNAME = db2fenc1
inst1.FENCED_GROUP_NAME = db2fgrp1
inst1.FENCED_HOME_DIRECTORY = /db2home/db2fenc1
inst1.FENCED_PASSWORD = ******</programlisting>
</para>
</listitem>
<listitem>
<para>Manually using command line. To use this method, follow these
steps:
<orderedlist>
<listitem>
<para>Log on to your machine as root.</para>
</listitem>
<listitem>
<para>Create groups for the instance owner, the fenced user
and the DAS user by using these commands:
<screen>groupadd db2grp1
groupadd db2fgrp1
groupadd dasadm1</screen>
Linux will create the groups using the first available group
ID (GID) numbers available. You can specify GID numbers if you
prefer.</para>
</listitem>
<listitem>
<para>Create a user that belongs to each group and specify the
home directory. For example, you can choose to place all home
directories in <filename class="directory">/db2home</filename>
by entering these commands:
<screen>
useradd -g db2grp1 -m -d /db2home/db2inst1 db2inst1 -p password1
useradd -g db2fgrp1 -m -d /db2home/db2fenc1 db2fenc1 -p password2
useradd -g dasadm1 -m -d /db2home/dasusr1 dasusr1 -p password3
</screen>
</para>
</listitem>
</orderedlist>
</para>
</listitem>
</itemizedlist>
</para>
</sect3>
<sect3>
<title>Adding existing users as DB2 users</title>
<para>To enable existing system users to act as DB2 instance administrators, you
must make a few modifications to the existing user accounts:</para>
<itemizedlist>
<listitem>
<para>Add your user to the db2grp1 group. The SYSADM_GROUP database
manager configuration parameter controls who has that level of access
for all databases in that instance. You can determine what group is
set as the SYSADM group by entering:
<screen>db2 get dbm cfg | grep SYSADM_GROUP</screen>
</para>
<para>By default, DB2 sets this as the db2grp1 group. To add the user
to the SYSADM group, modify the <filename>/etc/groups</filename> file
(as root), adding the user account ID to the line for the DB2 system
admin group. For example:
<screen>db2grp1:x:102:jackc,ellenp,frankj</screen>
</para>
</listitem>
<listitem>
<para>Update the user's profile by adding the following lines to the
.bashrc file in the home directory
<screen># The following three lines have been added by the DB2 SYSADM.
if [ -f /home/frankj/sqllib/db2profile ]; then
. /home/frankj/sqllib/db2profile
fi</screen>
</para>
</listitem>
<listitem>
<para>After installation, if you wish to grant or revoke access to
databases (or other objects), use the "User and Groups" section of the
Control Center or the GRANT and REVOKE SQL statements. If you want to
see an example, by default the SAMPLE database grants a number of
privileges to "PUBLIC".</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
</sect1>
<sect1 id='installing'>
<title>Installing DB2 Express-C</title>
<para>This chapter covers a typical setup scenario for installing DB2
Express-C on a 32-bit Linux system, using the <command>db2setup</command>
installation method.
</para>
<sect2>
<title>db2setup installation</title>
<sect3>
<title>Prerequisites</title>
<para>
<itemizedlist>
<listitem>
<para>Ensure that your system meets the software, memory, and disk
requirements outlined in <xref linkend='planning'/>.</para>
</listitem>
<listitem>
<para>You require root authority to perform the installation.</para>
</listitem>
<listitem>
<para>The DB2 Setup Launchpad is a graphical installer. You must have
X Window System software capable of rendering a graphical user
interface for the DB2 Setup Launchpad to run on your machine.</para>
</listitem>
</itemizedlist>
</para>
</sect3>
<sect3>
<title>Procedure</title>
<para>To install DB2 Express-C 9:
<orderedlist>
<listitem>
<para>Log on to the system as a user with root authority.</para>
</listitem>
<listitem>
<para>If you are installing from a CD or DVD, enter the command to
mount the DB2 installation media. For example,
<screen>mount /media/cdrom</screen>
If you are using a downloaded tar.gz file, extract the contents of
this archive to a location on your harddrive. For example, presuming
the tar.gz file was downloaded to the <filename
class="directory">/tmp</filename> directory:
<screen>cd /tmp
tar zxf db2exc_912_LNX_x86.tar.gz</screen>
</para>
</listitem>
<listitem>
<para>Change to the install directory.
For the CD/DVD install:
<screen>cd /media/cdrom/exp/disk1</screen>
For the downloaded and extracted tar.gz file:
<screen>cd /tmp/exp/disk1</screen>
</para>
</listitem>
<listitem>
<para>Run the <command>db2setup</command> command.
<screen>./db2setup</screen>
</para>
</listitem>
<listitem>
<para>When the IBM DB2 Setup Launchpad opens, select "Install a
Product".</para>
</listitem>
<listitem>
<para>Select the "<command>Install New</command>" button in the main
window.</para>
</listitem>
<listitem>
<para>When the Welcome to the DB2 Setup wizard window appears, click
"<command>Next</command>".
</para>
</listitem>
<listitem>
<para>Read the license agreement and select the
"<command>Accept</command>" button if you accept the terms (the
"<command>Decline</command>" button is selected by default). Click
"<command>Next</command>".</para>
</listitem>
<listitem>
<para>On the <command>Select the installation type</command> window,
select the type of installation you want to perform. You have three
installation options:</para>
<itemizedlist>
<listitem>
<para>Typical: 460&ndash;560 MB. This option installs and
configures most of the DB2 components, using a typical
configuration with default values. This option includes all of the
core features, along with ODBC support, and commonly used tools
such as the Control Center. You can select the "<command>View
Features</command>" button to see what components get installed
with this option.</para>
</listitem>
<listitem>
<para>Compact: 380&ndash;460 MB. This option installs and
configures only the basic DB2 components, with minimal
configuration performed on your computer. With this option you get
the base server and client support, along with Java and SQL
procedure support. Again, you can click
the "<command>View Features</command>" button for more
information.</para>
</listitem>
<listitem>
<para>Custom: 320&ndash;820 MB. This option allows you to install
only those components that you select; and to create and customize
a basic DB2 instance.</para>
</listitem>
</itemizedlist>
<para>Make your choice and click "<command>Next</command>". (The remainder
of these instructions are based on the Custom installation option).
</para>
</listitem>
<listitem>
<para>On the <command>Select the installation action</command>
window, choose the "<command>Install DB2 Express on this
computer</command>" radio button. You can also choose to save your
installations settings in a response file by selecting "<command>Save
your settings in a response file</command>". You should choose this
option if you plan to install DB2, with these same settings, on other
computers in your environment.</para>
</listitem>
<listitem>
<para>Choose the DB2 elements you want on the <command>Select
the features to install</command> window. You can preview each
component by selecting it and reading the corresponding description in
the <command>Description</command> section.</para>
<para>
You can also choose where to install the DB2 program files. By
default for a first time installation, this location is <filename
class="directory">/opt/ibm/db2/V9.1/</filename>
Once you have decided what features you want to install and the
destination, click "<command>Next</command>".</para>
</listitem>
<listitem>
<para>Select what languages you want installed for the messages and
user interface on your computer in the <command>Languages</command>
window. English is always installed, regardless of other language
choices. Click "<command>Next</command>".</para>
</listitem>
<listitem>
<para>In the <command>Specify the location of the DB2 Information
Center</command> window, select how you want to access the DB2
Information Center. The DB2 Information Center contains documentation
for DB2 and other related DB2 products. The "<command>On the IBM Web
site</command>" button is selected by default. By choosing this
option, DB2 is configured to access documentation on the Web using your
browser. If you have a copy of the DB2 Information Center installed
elsewhere on an intranet server, you can choose the "<command>On the
following intranet server</command>" button. Specify the values in
the <command>Host name</command> and <command>Port
number</command> text fields (the default value for the port number
is <literal>51000</literal>). Click the "<command>Help</command>"
button for more information, otherwise click
"<command>Next</command>".</para>
</listitem>
<listitem>
<para>Fill out the information for the user that will administer the
DB2 Administration Server in the <command>Set user information for
the DB2 Administration Server</command> window. Select either the
"<command>New user</command>" button, or the "<command>Existing
user</command>" button. The <command>Password</command> and
<command>Confirm password</command> text boxes are outlined in red
indicating required fields that must be filled in for the installation
to continue. If you choose to create a new user, a user account
will be created (including a home directory) on your Linux system.
Click "<command>Next</command>".</para>
</listitem>
<listitem>
<para>If you want to create a new basic DB2 instance to store your
database, then select the "<command>Create a DB2 instance</command>"
button on the <command>Set up a DB2 instance</command> window.
Otherwise, select the "<command>Defer this task until after
installation is complete</command>" button. If you select this
second option, you will need to create a new instance after the
installation
by using the <command>db2icrt</command> command. Click
"<command>Help</command>" for more information, otherwise click
"<command>Next</command>".</para>
</listitem>
<listitem>
<para>If you create a new instance, fill out the information for the
DB2 instance owner on the <command>Set user information for the DB2
instance owner</command> window. Select either the "<command>New
user</command>" button, or the "<command>Existing user</command>"
button. The <command>Password</command> and <command>Confirm
password</command> text boxes are outlined in red indicating required
fields that must be filled in for the installation to continue. Again,
if you choose to create a new user, a user account will be
created (including a home directory) on your Linux system. Click
"<command>Next</command>".</para>
</listitem>
<listitem>
<para>Fill out the information for the DB2 fenced user on the
<command>Set user information for the fenced user</command> window.
Select either the "<command>New user</command>" button, or the
"<command>Existing user</command>" button. The
<command>Password</command> and <command>Confirm
password</command> text boxes are outlined in red indicating required
fields that must be filled in for the installation to continue. For
more information on fenced users, and how fenced users relate to
fenced and non-fenced user-defined functions (UDFs) and stored
procedures, click "<command>Help</command>". Otherwise, click
"<command>Next</command>" to continue.</para>
</listitem>
<listitem>
<para>Configure the DB2 instance for TCP/IP communications on the
<command>Configure instance IP communication and startup</command>
window. You may either accept the default values found in the
<command>Service name</command> and <command>Port number</command>
fields, or select your own. If you want to configure the instance
properties at a later time, select the "<command>Do not configure at
this time</command>" button. This service name and port are added to
the services file for the system, typically found in
<filename>/etc/services</filename>.</para>
<para>You can also choose whether to start up
this instance at system startup. This is recommended if you are
planning on running your system as a DB2 server. Click
"<command>Next</command>".</para>
</listitem>
<listitem>
<para>On the <command>Prepare the DB2 tools catalog</command> window,
select the "<command>Prepare the DB2 tools catalog</command>" button
if you want to use the Task Center or Task Scheduler. This option
creates a local database that stores task metadata. If you do not have
this task repository, the scheduler will not function. If you want to
create a DB2 tools catalog after you finish the installation, select
the "<command>Do not prepare the DB2 tools catalog</command>"
button. You can create the DB2 tools catalog later
manually by using the <command>CREATE TOOLS CATALOG</command> command.
Click "<command>Next</command>".</para>
<para>If you decide to create a DB2 tools catalog, you can specify
which instance, database, and schema in which to store the DB2 tools
catalog. The DB2 tools catalog will be placed in the home directory of
the instance owner. Click "<command>Next</command>".</para>
</listitem>
<listitem>
<para>Specify a notification mail server and contact list on the
<command>Set up notifications</command> window. This allows DB2 to
notify administrators if a database requires attention.
Either create a new contact list that is stored locally, or use an
existing global contact list that resides on a remote DB2 server. Use
an available SMTP server that will accept an unauthenticated SMTP
message for e-mail notifications. You may also choose to skip this
step; DB2 will still record all administration notifications in the
log files. Click "<command>Next</command>".</para>
</listitem>
<listitem><para>If you specified a new local list for contacts in the previous
step, then in the Specify a contact for health monitor notification, you
can add a name and email address where DB2 Health Center messages will
be sent for any health alerts from DB2 databases.</para>
</listitem>
<listitem>
<para>On the <command>Start copying files</command> window, review
the installation settings, and then click
"<command>Finish</command>" to complete the installation. The
<command>Current settings</command> panel provides a summary of your
installation and configuration settings.</para>
</listitem>
</orderedlist>
While the files are being copied to your computer, you will see two status
bars on the <command>Installing DB2 Express</command> window, one
indicating the progress of each individual installation task, and one for
the overall installation progress. When the installation is finished, the
<command>Setup Complete</command> window indicates what, if any,
post-installation steps need to be taken, along with a tab (labelled "Log
File") that shows the log file report for the installation. Click
"<command>Finish</command>" to close this window and the Setup
Launchpad.</para>
</sect3>
</sect2>
</sect1>
<sect1 id='rhel4'>
<title>Installing DB2 Express-C on Red Hat Enterprise Linux (RHEL) 4</title>
<para>Before proceeding, please ensure that you have read <xref
linkend='planning'/> and <xref linkend='installing'/>.
</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.9-55.0.2 EL kernel.</para>
<sect2>
<title>Installation notes</title>
<para>The installation on Red Hat Enterprise Linux 4 completed successfully,
with no problems getting the GUI installer working, and no errors
during the install. This smooth installation isn't surprising, given that
RHEL 4 is an officially supported platform for DB2.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the iptables-based firewall (which
is enabled by default), it was necessary to modify the iptables firewall
ruleset, which is kept in the <filename>/etc/sysconfig/iptables</filename>
file. If you have enabled your firewall (using the
<command>iptables</command> service), and you want to enable external
connectivity to your DB2 server, you must open up TCP and UDP access to
ports 523 and TCP access to any DB2 service ports. To make this work, add
these rules to the <filename>iptables</filename>file (anywhere amongst the
<command>-j ACCEPT</command> rules):
<screen>-A RH-Firewall-1-INPUT -p udp -m udp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 50000 -j ACCEPT</screen>
These rules were added directly to the <filename>iptables</filename> file to
ensure that they persist in case of a system reboot. Note that you will need
to add another new TCP rule to allow firewall access if you create any
additional instances later.
</para>
<para>You can use <command>db2 get dbm cfg | grep SVCENAME</command> to retrieve
the service names and then check the <filename>/etc/services</filename> for
the equivalent port values to open on your firewall.</para>
</sect2>
</sect1>
<sect1 id='fedora6'><title>Installing DB2 Express-C on Fedora Core 6</title>
<para>
Before proceeding, please ensure that you have read
<xref linkend='planning'/> and <xref linkend='installing'/>.
</para>
<para>Note that IBM does not officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue. See the DB2 Linux validation website in <xref linkend='resources'/>.</para>
<para>These installation notes are based on a single-partition 32-bit
installation using the 2.6.18-1.2849.fc6 kernel.</para>
<sect2><title>Installation notes</title>
<para>The only installation error encountered was found when launching the
<command>./db2setup</command> command. The screen displayed this error:
<screen>ERROR:
The following library files could not be loaded by db2langdir
in /tmp/exp/disk1/db2/linux/install/../bin
libstdc++.so.5
libstdc++.so.5
Check the following web site for the up-to-date system
requirements of IBM DB2 Version 9.1:
http://www.ibm.com/software/data/db2/udb/sysreqs.html
Aborting the current installation ...</screen>
To resolve this error, use the <command>yum</command> package utility to
install the necessary C++ compatibility libraries:
<screen>yum -y install compat-libstdc++-33</screen>
Installation succeeded after installing the C++ libraries.
</para>
</sect2>
<sect2><title>Post-installation notes</title>
<para>Test results (see <xref linkend='tests'/> for more details) were
successful, except the Configuration Assistant was very slow when launched
from the DB2 Control Center. I eventually had to kill the process and it
returned a DB2JAVIT : RC = 143 return code.
</para>
<para>One strange effect encountered was that DB2 windows were not showing
up when launching the Java-based GUI tools (and other windows were missing
window decoration); however, logging off and then back in again solved the
problem.</para>
<para>To inherit the DB2 instance environment from another home directory,
create databases, dynamically load the DB2 libraries, and other tasks, I
found that I had to either disable SELinux or modify the default SELinux
policies. You can disable SELinux at run-time by running the following
command as root:
<screen># /usr/sbin/setenforce 0</screen>
Note that when you reboot SELinux will be enabled again. To disable SELinux
permanently, edit <filename>/etc/selinux/config</filename> and set the
following value:
<screen>SELINUX=disabled</screen>
</para>
<para>If you have enabled your firewall (using the <command>iptables</command>
service), and you want to enable external connectivity to your DB2 server,
you must open up ports 523 and any DB2 service ports (use <command>db2 get dbm
cfg | grep SVCENAME</command> to retrieve the service names and check
<filename>/etc/services</filename> for the equivalent port values) in your
firewall.</para>
</sect2>
</sect1>
<sect1 id='fedora7'>
<title>Installing DB2 Express-C on Fedora 7</title>
<para>
Before proceeding, please ensure that you have read
<xref linkend='planning'/> and <xref linkend='installing'/>.
</para>
<para>Note that IBM does not officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue.</para>
<para>These installation notes are based on a single-partition 32-bit
installation using the 2.6.21-1.3228.fc7 kernel.</para>
<sect2><title>Installation notes</title>
<para>The only installation error encountered was found when launching the
<command>./db2setup</command> command. The screen displayed this error:
<screen>ERROR:
The following library files could not be loaded by db2langdir
in /tmp/exp/disk1/db2/linux/install/../bin
libstdc++.so.5
libstdc++.so.5
Check the following web site for the up-to-date system
requirements of IBM DB2 Version 9.1:
http://www.ibm.com/software/data/db2/udb/sysreqs.html
Aborting the current installation ...</screen>
To resolve this error, use the <command>yum</command> package utility to install the necessary C++ compatibility libraries:
<screen>yum -y install compat-libstdc++-33</screen>
Installation succeeded after installing the C++ libraries.
</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the iptables-based firewall (which
is enabled by default), it was necessary to modify the iptables firewall
ruleset, which is kept in the <filename>/etc/sysconfig/iptables</filename>
file. If you have enabled your firewall (using the
<command>iptables</command> service), and you want to enable external
connectivity to your DB2 server, you must open up TCP and UDP access to
ports 523 and TCP access to any DB2 service ports. To make this work, add
these rules to the <filename>iptables</filename>file (anywhere amongst the
<command>-j ACCEPT</command> rules):
<screen>-A RH-Firewall-1-INPUT -p udp -m udp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 523 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 50000 -j ACCEPT</screen>
These rules were added directly to the <filename>iptables</filename> file to
ensure that they persist in case of a system reboot. Note that you will need
to add another new TCP rule to allow firewall access if you create any
additional instances later.
</para>
<para>You can use <command>db2 get dbm cfg | grep SVCENAME</command> to retrieve
the service names and then check the <filename>/etc/services</filename> for
the equivalent port values to open on your firewall.</para>
</sect2>
</sect1>
<sect1 id='opensuse10'><title>Installing DB2 Express-C on OpenSUSE 10.2</title>
<para>Before proceeding, please ensure that you have read <xref
linkend='planning'/> and <xref linkend='installing'/>.</para>
<para>Note that IBM does not officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue.</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.18.2-34-default kernel.</para>
<sect2>
<title>Installation notes</title>
<para>The installation on OpenSUSE 10.2 completed successfully,
with no problems getting the GUI installer working, and no errors
during the install.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the firewall (which
is enabled by default), it was necessary to add the port values to the
firewall using the YaST2 utility.</para>
<para>You can use the <command>db2 get dbm cfg | grep SVCENAME</command>
command to retrieve the DB2 instance service name. By default, this is set
as a TCP connection at port 50001. Note that you will need to add another new
TCP rule to allow firewall access if you create any additional instances
later. If you want to remotely administer the DB2 installation on this
system, the UDP and TCP connections at port 523 should also be allowed
through the firewall.</para>
<para>To open these ports using YaST, open the YaST tool, and select
"<command>Security and Users</command>, then select the
"<command>Firewall</command>" icon. In the <command>Allowed
Services</command> setup panel, click on the
"<command>Advanced</command>" button. In the TCP ports dialog, add
<command>523 50001</command>, and in the UDP ports dialog, add
<command>523</command>. Click "<command>Next</command>" until the setup
wizard completes and restarts the firewall. Remote connections will now pass
through to the DB2 instance.
</para>
</sect2>
</sect1>
<sect1 id='sles9'>
<title>Installing DB2 Express-C on SUSE Linux Enterprise Server (SLES) 9</title>
<para>Before proceeding, please ensure that you have read <xref
linkend='planning'/> and <xref linkend='installing'/>.</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.5-7.97-default kernel.</para>
<sect2>
<title>Installation notes</title>
<para>The installation on SLES 9 completed successfully, with no problems
getting the GUI installer working, and no errors during the install. This
smooth installation isn't surprising, given that SLES 9 is an officially
supported platform for DB2.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the firewall (which
is enabled by default), it was necessary to add the port values to the
firewall using the YaST utility.</para>
<para>You can use the <command>db2 get dbm cfg | grep SVCENAME</command>
command to retrieve the DB2 instance service name. By default, this is set
as a TCP connection at port 50001. Note that you will need to add another new
TCP rule to allow firewall access if you create any additional instances
later. If you want to remotely administer the DB2 installation on this
system, the UDP and TCP connections at port 523 should also be allowed
through the firewall.</para>
<para>To open these ports using YaST, open the YaST tool, and select
"<command>Security and Users</command>, then select the
"<command>Firewall</command>" icon. In the setup panel, click
"<command>Next</command>" and then on the "<command>Expert</command>
button. In the ports dialog, add <command>523 50001</command>. Click
"<command>Next</command>" until the setup wizard completes and then
"<command>Continue</command>" so that YaST will restart the firewall with
the new configuration. Remote connections will now pass through to the DB2
instance.
</para>
</sect2>
</sect1>
<sect1 id='sles10'>
<title>Installing DB2 Express-C on SUSE Linux Enterprise Server (SLES) 10</title>
<para>Before proceeding, please ensure that you have read <xref
linkend='planning'/> and <xref linkend='installing'/>.</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.16.21-0.8-default kernel. Novell AppArmor security was installed
and enabled during the installation and testing.</para>
<sect2>
<title>Installation notes</title>
<para>The installation on SLES 10 completed successfully,
with no problems getting the GUI installer working, and no errors
during the install. This smooth installation isn't surprising, given that
SLES 10 is an officially supported platform for DB2.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the firewall (which
is enabled by default), it was necessary to add the port values to the
firewall using the YaST2 utility.</para>
<para>You can use the <command>db2 get dbm cfg | grep SVCENAME</command>
command to retrieve the DB2 instance service name. By default, this is set
as a TCP connection at port 50001. Note that you will need to add another new
TCP rule to allow firewall access if you create any additional instances
later. If you want to remotely administer the DB2 installation on this
system, the UDP and TCP connections at port 523 should also be allowed
through the firewall.</para>
<para>To open these ports using YaST, open the YaST tool, and select
"<command>Security and Users</command>, then select the
"<command>Firewall</command>" icon. In the <command>Allowed
Services</command> setup panel, click on the
"<command>Advanced</command>" button. In the TCP ports dialog, add
<command>523 50001</command>, and in the UDP ports dialog, add
<command>523</command>. Click "<command>Next</command>" until the setup
wizard completes and restarts the firewall. Remote connections will now pass
through to the DB2 instance.
</para>
</sect2>
</sect1>
<sect1 id='sled10'>
<title>Installing DB2 Express-C on SUSE Linux Enterprise Desktop 10</title>
<para>Before proceeding, please ensure that you have read <xref
linkend='planning'/> and <xref linkend='installing'/>.</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.16.21-0.25 kernel.</para>
<sect2>
<title>Installation notes</title>
<para>The installation on SLED 10 completed successfully,
with no problems getting the GUI installer working, and no errors
during the install.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the firewall (which
is enabled by default), it was necessary to add the port values to the
firewall using the YaST2 utility.</para>
<para>You can use the <command>db2 get dbm cfg | grep SVCENAME</command>
command to retrieve the DB2 instance service name. By default, this is set
as a TCP connection at port 50001. Note that you will need to add another new
TCP rule to allow firewall access if you create any additional instances
later. If you want to remotely administer the DB2 installation on this
system, the UDP and TCP connections at port 523 should also be allowed
through the firewall.</para>
<para>To open these ports using YaST, open the YaST tool, and select
"<command>Security and Users</command>, then select the
"<command>Firewall</command>" icon. In the <command>Allowed
Services</command> setup panel, click on the
"<command>Advanced</command>" button. In the TCP ports dialog, add
<command>523 50001</command>, and in the UDP ports dialog, add
<command>523</command>. Click "<command>OK</command>" and then
"<command>Next</command>" until the setup wizard completes and restarts
the firewall. Remote connections will now pass through to the DB2 instance.
</para>
</sect2>
</sect1>
<sect1 id='mand2007'><title>Installing DB2 Express-C on Mandriva Linux 2007</title>
<para>
Before proceeding, please ensure that you have read <xref linkend='planning'/>
and <xref linkend='installing'/>.
</para>
<para>Note that IBM does not officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue.</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.17-5mdvlegacy kernel.</para>
<sect2>
<title>Installation notes</title>
<para>Note that root logins are not allowed in Mandriva, so you will need to
log on as another user, then run the <command>su -l</command> command from a
terminal session to gain root access before you launch the
<command>./db2setup</command> command.
</para>
<para>The only installation error encountered was found when launching the
<command>./db2setup</command> command. The screen displayed this error:
<screen>ERROR:
The following library files could not be loaded by db2langdir
in /tmp/exp/disk1/db2/linux/install/../bin
libstdc++.so.5
libstdc++.so.5
Check the following web site for the up-to-date system
requirements of IBM DB2 Version 9.1:
http://www.ibm.com/software/data/db2/udb/sysreqs.html
Aborting the current installation ...</screen>
To resolve this error, use the <command>drakrpm</command> package utility to
install the necessary C++ compatibility libraries:
<screen>libstdc++5-3.3.6-3mdk
libstdc++6-4.1.1-3mdk</screen>
Installation succeeded after installing the C++ libraries.
</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>Basic test results (see <xref linkend='tests'/> for more details) were
successful.</para>
<para>However, I found that after a reboot, the DB2 instance was not being
restarted automatically, so clients could not connect to the database. To
correct this problem, execute this command as the instance owner:
<screen>db2set DB2AUTOSTART=YES</screen>
This will ensure that the DB2 instance is initialized and ready to receive
incoming connections after a reboot (intentional or otherwise).</para>
<para>Also, to allow DB2 access through the firewall (which
is enabled by default), it was necessary to modify the add in the
appropriate firewall ports. To enable external connectivity to your DB2
server, you must open up TCP and UDP access to ports 523 and TCP access to
the DB2 instance port (50001 by default).
</para>
<para>
Open the Mandriva Control Center, choose the <command>Security</command>
tab, and then the "<command>Set up a personal firewall...</command>" icon.
In the firewall setup panel, click the "<command>Advanced</command>
button and add <command>523/udp 523/tcp 50001/tcp</command> to the
<command>Other ports</command> text box. Click "<command>OK</command>
until the firewall setup is complete.
</para>
<para>Note that you will need to add another new TCP rule to allow firewall
access if you create any additional instances later.</para>
</sect2>
</sect1>
<!--NEED TO DO:-->
<!--<sect1 id='gentoo'><title>Installing DB2 Express-C on Gentoo (2006.01)</title>-->
<!-- <para>-->
<!-- Before proceeding, please ensure that you have read-->
<!-- <xref linkend='planning'/> and <xref linkend='installing'/>.-->
<!-- </para>-->
<!--<para>Note that IBM does not officially support this distribution for-->
<!--DB2 V8.2. Any problems you encounter using this distribution must be-->
<!--replicated on a supported distribution before IBM Support will help you-->
<!--resolve the issue.</para>-->
<!--<para>These notes are based on a single-partition installation on the -->
<!--2.6.9-gentoo-r13 kernel (2005-01-17). Following the -->
<!--<ulink url="http://publib.boulder.ibm.com/infocenter/db2help/index.jsp?topic=/com.ibm.db2.udb.doc/start/t0006833.htm">manual install</ulink> -->
<!--instructions in the DB2 Information Center, we use the RPM method of -->
<!--installing DB2 V8.2, through a modified <command>db2_install</command> -->
<!--script. This is just one of many ways you could accomplish this task, but this method -->
<!--has been tested (at least once) and it works.</para>-->
<!--<sect2><title>Pre-installation notes</title>-->
<!--<para>Emerge the rpm package and any of its pre-requisites:-->
<!--<screen>emerge rpm</screen>-->
<!--If you want to run a multiple-partition environment, you will need to emerge either the pdksh or ksh package.-->
<!--</para></sect2>-->
<!--<sect2><title>Installation notes</title>-->
<!--<para>-->
<!--Gentoo uses the latest version of the GNU coreutils package of utilities, which -->
<!--includes the <command>tail</command> command. The DB2 install script -->
<!--(<command>db2_install</command>) and several instance administration -->
<!--shell scripts rely on deprecated command line arguments to <command>tail</command> -->
<!--that have been removed entirely from the latest GNU <computeroutput>coreutils</computeroutput> version -->
<!--of <command>tail</command>. Therefore, you must copy the contents of the install CD -->
<!--and modify the <command>db2_install</command> script before you can successfully run the install.-->
<!--</para><para>-->
<!--The RPM packages supplied with the DB2 install CD contain dependency listings that cannot -->
<!--be satisfied inside a Gentoo environment, because Gentoo does not use RPM as a native -->
<!--packaging method. To overcome these dependencies, you also need to modify the <command>db2_install</command> -->
<!--script to ignore dependencies and force the installation of DB2 onto your system. -->
<!--</para><para>-->
<!--Perform the following steps to modify the <command>db2_install</command> script -->
<!--for the required <command>tail</command> and <command>rpm</command> -->
<!--changes and install the product:</para>-->
<!--<orderedlist>-->
<!--<listitem>-->
<!--<para>(Skip this step if you downloaded a tarball containing the DB2 install code.) -->
<!--Assuming you want to copy the contents of the DB2 install CD to a subdirectory named "cdrom" in -->
<!--your home directory, issue the following command:-->
<!--<screen>cp -r /mnt/cdrom/* ~/cdrom</screen></para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Open the <filename>~/cdrom/db2/linux/db2_install</filename> script in your text editor and modify the following lines</para>-->
<!--<para>-->
<!--From:-->
<!--<screen>output_df="`df -k ${dirname2?} | tail -1`"</screen>-->
<!--</para>-->
<!--<para>-->
<!--To:-->
<!--<screen>output_df="`df -k ${dirname2?} | tail -n -1`"</screen>-->
<!--</para>-->
<!--<para>-->
<!--From:-->
<!--<screen>( rpm -ivh ${INSTDEV?}/${pkg?}${RPMEXTN?} 2>&amp;1; \ -->
<!-- echo $? > ${TMPRC?} ) | tee -a ${DB2INSTLOG?}</screen>-->
<!--</para>-->
<!--<para>-->
<!--To:-->
<!--<screen>( rpm force nodeps -ivh ${INSTDEV?}/${pkg?}${RPMEXTN?} 2>&amp;1; \ -->
<!-- echo $? > ${TMPRC?} ) | tee -a ${DB2INSTLOG?}</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Change to the <filename class="directory">~/cdrom</filename> directory and issue the following command as root:-->
<!--<screen>./db2_install</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>The DB2 installer prompts you to enter the keyword of the product you want to install. -->
<!--for example, issuing the <command>db2_inst</command> command for the DB2 Express -->
<!--Edition for Linux install displays the following screen:-->
<!--<screen>-->
<!--Specify one or more of the following keywords, -->
<!--separated by spaces, to install DB2 products.-->
<!---->
<!-- Keyword Product Description-->
<!-- DB2.EXP DB2 Express Edition for LINUX-->
<!---->
<!--Enter "help" to redisplay product names.-->
<!---->
<!--Enter "quit" to exit.-->
<!---->
<!--***********************************************************-->
<!--DB2.EXP-->
<!--</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--</orderedlist>-->
<!--<para>-->
<!--The DB2 installer will now install many RPM packages into the /opt/IBM/db2/V8.1/ directory. -->
<!--</para>-->
<!--<sect3><title>Installing DB2 FixPaks on a non-RPM distribution</title>-->
<!--<para>When installing a DB2 FixPak onto an existing DB2 installation, the RPM-->
<!-- utility is used, which will cause problems on a distribution that does-->
<!-- not use the RPM installation method by default. Since Gentoo is one of-->
<!-- those distributions, you must make the following changes to the-->
<!-- <command>installFixPak</command> script.-->
<!--</para>-->
<!--<para>In the <command>installFixPak</command> script, change this-->
<!-- line:-->
<!-- <screen>-->
<!-- echo "Updating to ${fullfsname?} ... "-->
<!-- rpm -ivh ${fullfsname?}-->
<!-- </screen>-->
<!-- to read:-->
<!-- <screen>-->
<!-- echo "Updating to ${fullfsname?} ... "-->
<!-- rpm force nodeps ivh ${fullfsname?}-->
<!-- </screen>-->
<!--</para>-->
<!--</sect3>-->
<!--</sect2>-->
<!--<sect2><title>Post-installation notes</title>-->
<!--<para>Now that you have installed DB2, you need to create the groups, users, -->
<!--DB2 Administration Server instance, and database instance for your database. -->
<!--The following instructions create users and groups with the default names -->
<!--used in the DB2 documentation (dasadm1, db2inst1, db2fenc1).-->
<!--</para>-->
<!--<orderedlist>-->
<!--<listitem>-->
<!--<para>As root, create the required groups:-->
<!--<screen>-->
<!--groupadd -g 999 db2iadm1-->
<!--groupadd -g 998 db2fadm1-->
<!--groupadd -g 997 dasadm1-->
<!--</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>As root, create the required users and assign them to their corresponding groups:-->
<!--<screen>-->
<!--useradd -u 1004 -g db2iadm1 -m -d /home/db2inst1 db2inst1 -->
<!--useradd -u 1003 -g db2fadm1 -m -d /home/db2fenc1 db2fenc1 -->
<!--useradd -u 1002 -g dasadm1 -m -d /home/dasusr1 dasusr1-->
<!--</screen></para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Before you can create the DB2 Administration Server and database instance, you have -->
<!--to modify the db2iutil library to update calls to the <command>tail</command> -->
<!--command to the current GNU syntax. As root, open the <filename>/opt/IBM/db2/V8.1/instance/db2iutil</filename>-->
<!--file in an editor and make the following changes (or apply the changes to the file using -->
<!--the patch utility):-->
<!--<screen>-->
<!-- db2iutil.orig 2005-01-17 07:05:58.000000000 -0500-->
<!-- db2iutil 2005-01-17 07:06:32.000000000 -0500-->
<!--@@ -327,7 +327,7 @@-->
<!-- fi-->
<!-- -->
<!-- # Get output of the "df" command-->
<!--- output_df="`df -k ${dirname2?} | tail -1`"-->
<!--+ output_df="`df -k ${dirname2?} | tail -n 1`"-->
<!-- # On some platforms, the filesystem is on the previous line causing us-->
<!-- # one less token for awk to find.-->
<!-- free_space_in_fs=`echo ${output_df?} | awk '{if ($4 !~ /%/) {print $4} else-->
<!-- {print $3}}'`-->
<!--@@ -382,7 +382,7 @@-->
<!-- rm -f ${TMPFILE3?}-->
<!-- -->
<!-- # Get the name of the filesystem where dir $dirname2 resides.-->
<!--- df -k ${dirname2?} | tail +2 > ${TMPFILE3?}-->
<!--+ df -k ${dirname2?} | tail -n +2 > ${TMPFILE3?}-->
<!-- -->
<!-- # There must be only one line in TMPFILE3 file-->
<!-- lcount=`wc -l ${TMPFILE3?} | awk '{print $1}'`-->
<!--@@ -394,7 +394,7 @@-->
<!-- chk_fsystype 22-->
<!-- stop_prog 1-->
<!-- fi-->
<!--- fsname=`awk '{print $NF}' ${TMPFILE3?} | tail -1`-->
<!--+ fsname=`awk '{print $NF}' ${TMPFILE3?} | tail -n 1`-->
<!-- -->
<!-- rm -f ${TMPFILE3?}-->
<!-- foundit=${FALSE?}-->
<!--@@ -879,7 +879,7 @@-->
<!-- ${DB2VER_V2?})-->
<!-- # Dir of DB2 V2 instances-->
<!-- if [ -f ${DB2V2ILIST?} ]; then-->
<!--- tail +2 ${DB2V2ILIST?} > ${TMPFILE3?}-->
<!--+ tail -n +2 ${DB2V2ILIST?} > ${TMPFILE3?}-->
<!-- if [ -s ${TMPFILE3?} ]; then-->
<!-- for iname in `cat ${TMPFILE3?}`; do-->
<!-- db2ilist=${db2ilist?}" ${iname?}"-->
<!--@@ -891,7 +891,7 @@-->
<!-- ${DB2VER_DJ?})-->
<!-- # Dir of DB2 V2 instances-->
<!-- if [ -f ${DJV211ILIST?} ]; then-->
<!--- tail +2 ${DJV211ILIST?} > ${TMPFILE3?}-->
<!--+ tail -n +2 ${DJV211ILIST?} > ${TMPFILE3?}-->
<!-- if [ -s ${TMPFILE3?} ]; then-->
<!-- for iname in `cat ${TMPFILE3?}`; do-->
<!-- db2ilist=${db2ilist?}" ${iname?}"-->
<!--</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Create the DB2 Administration Server: -->
<!--<screen>/opt/IBM/db2/V8.1/instance/dascrt -u dasusr1</screen>-->
<!--</para>-->
<!--<para>Create the DB2 database instance:-->
<!--<screen>/opt/IBM/db2/V8.1/instance/db2icrt -a server -u db2fenc1 db2inst1</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--</orderedlist>-->
<!--<sect3><title>-->
<!--Enabling remote connections</title>-->
<!--<para>When you perform a manual install of DB2, the installer does not automatically -->
<!--set up the communication protocols for your DB2 server. To enable connections to your -->
<!--DB2 server from remote clients, perform the following steps:-->
<!--</para>-->
<!--<orderedlist>-->
<!--<listitem>-->
<!--<para>Set the port on which DB2 should communicate. Ensure that you select a port that -->
<!--is not blocked by a firewall or used by another service defined in the <filename>/etc/services</filename> file. -->
<!--To set the communications port, update the DB2 database manager configuration variable -->
<!--SVCENAME. For example, to set the communications port to 50055, issue the following command -->
<!--as the instance user ("db2inst1", if you've been using the defaults):-->
<!--<screen>db2 update dbm cfg using svcename 50055</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Set the DB2 communications protocol registry variable to define the protocol -->
<!--supported by the server. Typically the only protocol you would use is TCP/IP, so issue -->
<!--the following command as the instance user ("db2inst1" if you've been using the defaults):-->
<!--<screen>db2set DB2COMM=tcpip</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--<listitem>-->
<!--<para>Restart the database instance to enable the settings to take effect.-->
<!--<screen>-->
<!--db2stop-->
<!--db2start-->
<!--</screen>-->
<!--</para>-->
<!--</listitem>-->
<!--</orderedlist>-->
<!--<para>-->
<!--You should now be able to catalog and connect to your Gentoo server from a remote client.-->
<!--</para>-->
<!--</sect3>-->
<!--<sect3><title>-->
<!--Running the DB2 Control Center and other DB2 GUI tools-->
<!--</title>-->
<!--<para>To run the DB2 Control Center or other DB2 GUI tools, you must install the IBM -->
<!--Software Developers' Kit for Java. This RPM is included in the DB2 install CD-ROM in -->
<!--the <filename class="directory">/db2/linux/Java-1.4/</filename> directory. To install the IBM Software Developers' Kit for -->
<!--Java, change to the root directory of the CD-ROM and issue the following command as root:-->
<!--<screen>-->
<!--rpm force nodeps -ivh db2/linux/Java-1.4/IBMJava2-SDK-1.4.1-2.0.i386.rpm-->
<!--</screen>-->
<!--</para><para>-->
<!--Log in as the db2inst1 user and invoke the DB2 Control Center:-->
<!--<screen>db2cc</screen>-->
<!--</para></sect3>-->
<!--</sect2></sect1>-->
<sect1 id='ubuntu606'>
<title>Installing DB2 Express-C on Ubuntu 6.06 LTS 'Dapper Drake'</title>
<para>
Before proceeding, please ensure that you have read <xref linkend='planning'/>
and <xref linkend='installing'/>.
</para>
<para>These installation notes are based on a single-partition installation
using the 2.6.15-17 kernel.</para>
<sect2>
<title>Installation notes</title>
<para>Since you cannot log in as root directly with an Ubuntu system, this
DB2 installation is run as the default user created during Ubuntu
setup (i.e. the regular user account with 'sudo' capability).</para>
<para>There are two ways of installing DB2 Express-C 9 on Ubuntu. The harder
of the two methods is to use the default DB2 <command>db2setup</command>,
and then make adjustments to the Ubuntu system afterwards to handle the
slight differences of Ubuntu's Debian-based packaging system. For
reasons of clarity and brevity, I will omit the instructions for doing it
this more difficult way; however, if you would like to see these
instructions, please send me an email (db2howto@gmail.com) and I will
pass them along.</para>
<para>The easy way to install DB2 Express-C on Ubuntu 6.06 LTS is to
use the Synaptic package installer, and almost everything is done for you,
from downloading to installation and configuration. Here's how to do it:
<orderedlist>
<listitem>
<para>Under the <command>Applications</command> menu on the Ubuntu
menu bar, choose <command>Add/Remove</command>.
</para>
</listitem>
<listitem>
<para>Once the Synaptic package manager application has started up,
click the <command>Show commercial applications</command> checkbox.</para>
</listitem>
<listitem>
<para>In the <command>Search</command> bar, type "DB2" and hit the Enter
key.</para>
</listitem>
<listitem>
<para>DB2 Express should show up as the only result. If you don't see
it, make sure that Synaptic is displaying <command>All
Applications</command> or <command>Third party applications</command>.
</para>
</listitem>
<listitem>
<para>Enable the <command>dapper-commercial</command> channel if
requested by clicking the "<command>Enable channel</command>" button.
</para>
</listitem>
<listitem>
<para>Click "<command>Apply</command>".
</para>
</listitem>
</orderedlist>
After hitting the "<command>Apply</command>" button, Synaptic will
download the DB2 Express-C package, along with a few dependent libraries,
then unpack and install the package and finally configure the DB2 users and
default instance.
</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para></para>
<para>After installation by Synaptic, there are a few steps required to get
DB2 up and running smoothly.
<orderedlist>
<listitem>
<para>Usable passwords for the DB2 default accounts.</para>
<para>To actually log in or connect to the DB2 databases and servers using
the default DB2 users (db2inst1, db2fenc1, and dasusr1), you need to
modify the initial passwords. To do this, open a terminal (as the regular
user), and type <command>sudo su -</command> to get root access. Then run
these three commands:
<screen>passwd db2inst1
passwd db2fenc1
passwd dasusr1</screen>
Each time you will be asked to set the new password for the specified user
account.</para></listitem>
<listitem><para>Change the default shell for the DB2 default accounts.</para>
<para>The default command shell for the DB2 accounts is set as just a
plain old <command>/bin/sh</command>. To get the handy features of the
BASH shell, you'll want to change it for these three accounts. In the same
root access command window, open the <filename>/etc/passwd</filename> file
in your favorite text editor and change:
<screen>
db2inst1:x:1001:1001::/home/db2inst1:/bin/sh
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/sh
dasusr1:x:1003:1003::/home/dasusr1:/bin/sh</screen>
to
<screen>
db2inst1:x:1001:1001::/home/db2inst1:/bin/bash
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/bash
dasusr1:x:1003:1003::/home/dasusr1:/bin/bash</screen>
</para></listitem>
<listitem>
<para>Enable DB2 service ports for remote connections.</para>
<para>To enable outside users to get to your DB2 databases, you'll need
to set up the DB2 service port, as it is not configured by the Synaptic
installation process.</para>
<para>As the regular user, run <command>sudo vi /etc/services</command>
and add this line to the end of the file and save the changes:
<screen>db2c_db2inst1 50001/tcp # IBM DB2 instance - db2inst1</screen>
Then, as the DB2 instance owner (db2inst1 by default), run these commands:
<screen>db2 update dbm cfg using SVCENAME db2c_db2inst1
db2set DB2COMM=tcpip
db2stop
db2start</screen>
Now remote users will be able to connect to the DB2 databases on your
Ubuntu system.
</para></listitem>
<listitem>
<para>Enable remote DB2 administration connections.</para>
<para>To allow remote administration of your DB2 server, you'll need to
set up the DB2 DAS connection port, as it is not configured by the
Synaptic installation process.
</para>
<para>As the regular user, run <command>sudo vi /etc/services</command>
and add this line to the end of the file:
<screen>ibm-db2 523/tcp # IBM DB2 DAS
ibm-db2 523/udp # IBM DB2 DAS</screen>
Then, as the DB2 DAS owner (dasusr1 by default), run these commands:
<screen>db2admin stop
db2admin start</screen>
Now remote administrators can connect to the DAS server to administer
databases on your Ubuntu system.
</para>
</listitem>
</orderedlist>
</para>
</sect2>
</sect1>
<sect1 id='ubuntu704'>
<title>Installing DB2 Express-C on Ubuntu 7.04 'Feisty Fawn'</title>
<para>These installation notes are based on a single-partition installation
using the 2.6.20-16-generic kernel.</para>
<para>Note that IBM does not yet officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue.</para>
<para>Also be aware that the PowerPC architecture is no longer supported in
Ubuntu 7.04 and later.</para>
<sect2>
<title>Installation notes</title>
<para>Since you cannot log in as root directly with an Ubuntu system, this
DB2 installation is run as the default user created during Ubuntu
setup (i.e. the regular user account with 'sudo' capability).</para>
<para>There are two ways of installing DB2 Express-C 9 on Ubuntu. The harder
of the two methods is to use the default DB2 <command>db2setup</command>,
and then make adjustments to the Ubuntu system afterwards to handle the
slight differences of Ubuntu's Debian-based packaging system. For
reasons of clarity and brevity, I will omit the instructions for doing it
this more difficult way; however, if you would like to see these
instructions, please send me an email (db2howto@gmail.com) and I will
pass them along.</para>
<para>The easy way to install DB2 Express-C on Ubuntu 7.04 is to download
the DB2 Express-C Debian package file and then use the Ubuntu package
installer. This way, almost everything is done for you, from installation to
configuration. Here's how to do it:
<orderedlist>
<listitem>
<para>Use any FTP client software and connect to:
<ulink url='ftp.software.ibm.com/software/data/db2/express/latest_debs'>ftp.software.ibm.com/software/data/db2/express/latest_debs</ulink>
</para>
</listitem>
<listitem>
<para>Download <filename>db2exc_9.1.2-1_i386.deb</filename> (or the
latest equivalent .deb file)
</para>
</listitem>
<listitem>
<para>Once the download is complete, run this command:
<screen>sudo gdebi-gtk db2exc_9.1.2-1_i386.deb</screen>
</para>
</listitem>
<listitem>
<para>Click "<command>Install Package</command>"</para>
</listitem>
<listitem>
<para>Click "<command>Close</command>" once the package has been
installed</para>
</listitem>
</orderedlist>
After hitting the "<command>Install Package</command>" button, the Ubuntu
package installer will unpack and install the package and configure the DB2
users and default instance. Click the "<command>Close</command>" button
once the installation is complete.
</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para></para>
<para>After installation by Synaptic, there are a few steps required to get
DB2 up and running smoothly.
<orderedlist>
<listitem>
<para>Usable passwords for the DB2 default accounts.</para>
<para>To actually log in or connect to the DB2 databases and servers
using the default DB2 users (db2inst1, db2fenc1, and dasusr1), you need
to modify the initial passwords. To do this, open a terminal (as the
regular user), and type <command>sudo su -</command> to get root access.
Then run these three commands:
<screen>passwd db2inst1
passwd db2fenc1
passwd dasusr1</screen>
Each time you will be asked to set the new password for the specified
user account.
</para>
</listitem>
<listitem>
<para>Change the default shell for the DB2 default accounts.</para>
<para>The default command shell for the DB2 accounts is set as just a
plain old <command>/bin/sh</command>. To get the handy features of the
BASH shell, you'll want to change it for these three accounts. In the
same root access command window, open the
<filename>/etc/passwd</filename> file in your favorite text editor and
change:
<screen>
db2inst1:x:1001:1001::/home/db2inst1:/bin/sh
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/sh
dasusr1:x:1003:1003::/home/dasusr1:/bin/sh</screen>
to
<screen>
db2inst1:x:1001:1001::/home/db2inst1:/bin/bash
db2fenc1:x:1002:1002::/home/db2fenc1:/bin/bash
dasusr1:x:1003:1003::/home/dasusr1:/bin/bash</screen>
</para>
</listitem>
<listitem>
<para>Enable DB2 service ports for remote connections.</para>
<para>To enable outside users to get to your DB2 databases, you'll need
to set up the DB2 service port, as it is not configured by the Synaptic
installation process.</para>
<para>As the regular user, run <command>sudo vi /etc/services</command>
and add this line to the end of the file:
<screen>db2c_db2inst1 50001/tcp # IBM DB2 instance - db2inst1</screen>
Then, as the DB2 instance owner (db2inst1 by default), run these commands:
<screen>db2 update dbm cfg using SVCENAME db2c_db2inst1
db2set DB2COMM=tcpip
db2stop
db2start</screen>
Now remote users will be able to connect to the DB2 databases on your
Ubuntu system.
</para>
</listitem>
<listitem>
<para>Enable remote DB2 administration connections.</para>
<para>To allow remote administration of your DB2 server, you'll need to
set up the DB2 DAS connection port, as it is not configured by the
Synaptic installation process.</para>
<para>As the regular user, run <command>sudo vi /etc/services</command>
and add this line to the end of the file:
<screen>ibm-db2 523/tcp # IBM DB2 DAS
ibm-db2 523/udp # IBM DB2 DAS</screen>
Then, as the DB2 DAS owner (dasusr1 by default), run these commands:
<screen>db2admin stop
db2admin start</screen>
Now remote administrators can connect to the DAS server to administer
databases on your Ubuntu system.
</para>
</listitem>
<listitem>
<para>Correct instance restart problem</para>
<para>One issue of note with the Ubuntu 7.04 installation is that the
DB2 instances do not properly restart after a system reboot, and setting
DB2AUTOSTART=YES does not resolve the issue.</para>
<para>One workaround to this problem was suggested in part by
IgorM on the DB2 Express-C forum; and that is to create and execute your
own DB2 instance start up script.
</para>
<para>To begin with, login and create a new script file using the command:
<screen>sudo vi /etc/init.d/db2</screen>
and then insert this text:
<screen>#!/bin/sh
#
# Script to start DB2 instances on bootup.
#
set -e
. /lib/lsb/init-functions
case "$1" in
start)
/opt/ibm/db2exc/V9.1/instance/db2istrt
;;
stop|restart|reload)
;;
esac
exit 0</screen>
and write the file to disk with the <command>:wq</command> vi command.
</para>
<para>
Note that the path to the executable is
<command>/opt/ibm/db2exc/V9.1/</command>, the default installation path
from the DB2 .deb file. If your installation put the DB2 files
elsewhere, be sure to adjust this script as required to find the
/instance/ directory.
</para>
<para>Once the script has been saved, give the file the proper ownership
and permissions:
<screen>chown root.root db2
chmod 755 db2</screen></para>
<para>Now, to initialize this script so that it starts at boot time,
install the Boot-Up Manager with this command:
<screen>sudo apt-get bum</screen>
</para>
<para>After Synaptic downloads and installs the application file, you
can run the program by clicking <command>System -> Administration ->
BootUp-Manager</command>. Then click on the "Activate" checkbox beside
the <command>db2</command> entry. Click <command>Apply</command> and
say "No" to the dialog that asks if you want to start the service now.
Click <command>Quit</command>. The script will now run at your next boot and
start up all DB2 instances.
</para>
<para>The only other way to resolve the problem is to manually
start the instances after a reboot with <command>db2start</command> (as
the instance owner) and <command>db2admin start</command> (as the DAS
owner). Once DB2 Express-C has passed the validation process for Ubuntu
7.04, this instance start issue will disappear.
</para>
</listitem>
</orderedlist>
</para>
</sect2>
</sect1>
<sect1 id='mepis6'><title>Installing DB2 Express-C on SimplyMEPIS 6.0</title>
<para>SimplyMEPIS 6.0 is based on the Ubuntu package management system and
repositories, and is currently amongst the top 5 Linux distributions
(according to distrowatch.com). In 6.0, SimplyMEPIS only supports the 32-bit
architecture, but the new release, 6.5, supports the 64-bit architecture.</para>
<para>Note that IBM does not officially support this distribution for DB2
9. Any problems you encounter using this distribution must be replicated on a
supported distribution before IBM Support can help you resolve the
issue.</para>
<para>These installation notes are based on a single-partition 32-bit
installation using the 2.6.15-26.386 kernel.</para>
<sect2>
<title>Installation notes</title>
<para>No problems were encountered during the default installation.</para>
</sect2>
<sect2>
<title>Post-installation notes</title>
<para>After installation, I could not create the SAMPLE database, or any
database for that matter. DB2 returned this strange error:
<screen>SQL0440N No authorized routine named RTRIM of
type "FUNCTION" having compatible arguments was found</screen>
I then rebooted and logged back in as root, then opened a terminal session:
<screen>su - db2inst1
db2sampl</screen>
and then SAMPLE database creation worked as expected. After this, I logged
out as root, then back in as db2inst1 and all DB2 tests completed
successfully.
</para>
<para>If you want to enable external connectivity to your DB2 server,
you must open up ports 523 and any DB2 instance services (use <command>db2
get dbm cfg | grep SVCENAME</command> to retrieve the service names and
check <filename>/etc/services</filename> for the equivalent port values) in your firewall.</para>
</sect2>
</sect1>
<sect1 id='help'>
<title id="help.title">Installing the DB2 Information Center</title>
<para>The DB2 Information Center delivers the DB2 product documentation inside
an Eclipse-based help system, and provides a convenient way to search and utilize
the DB2 documentation.</para>
<sect2 id='infocenter'>
<title>Installing the Information Center locally</title>
<para>To begin, mount the DB2 Information Center CD in your system drive, or
if you downloaded the compressed file through the Express-C website, expand
the tarball containing the installation utilities.</para>
<para>Change to the base directory (<filename>doce/disk1/</filename>) and
run the <command>db2setup</command> utility. This will launch the DB2 setup
wizard. You can also use the other setup methods, but since the GUI
installation sets up and configures everything for you, it's the
method I recommend.</para>
<para>Installation Steps:
<orderedlist>
<listitem>
<para>Select the "Install a Product" option from the launcher, and
then click the "Install New" button in the main panel.</para>
</listitem>
<listitem>
<para>Read the description and click "Next".</para>
</listitem>
<listitem>
<para>Read the license agreement, and if you agree, select
"Accept" and click "Next".</para>
</listitem>
<listitem>
<para>By default, the installation script will install the Information
Center locally and generate a response file. The choice is up to you,
but we're only doing a local install, so choose the "Install DB2
Information Center on this computer" option instead. Click
"Next".</para>
</listitem>
<listitem>
<para>Add any additional languages that you want to have
installed. English is installed by default and cannot be
deselected. Each additional language will add anywhere from
5 MB to 50 MB to the installation size. Click "Next".</para>
</listitem>
<listitem>
<para>The next panel is where things get a little interesting. Here
you can specify the service name that the Information Center will
run under. An entry will be added to the
<filename>/etc/services</filename> file for this service. You
probably don't need to change this, unless you have another service
running as "db2icv91". </para>
<para>Also, this panel is where you specify the system port that the
Information Center will use to serve up the documentation. By
default, this is port 51000.</para>
<para>These settings will change the configuration for
all DB2 products installed on the local system, so that their help
system will use the parameters you define here. Click "Next".</para>
</listitem>
<listitem>
<para>Read the summary of what will be done, then click "Finish" to
start the file installation</para>
</listitem>
</orderedlist>
</para>
<sect3>
<title>Post-installation notes</title>
<para>You can change which directory the Information Center uses as a
temporary working directory. To do this, modify the DB2_ECLIPSEIC_DATA
parameter in the db2ic.conf file
found in the <filename class="directory">/opt/ibm/db2ic/V9/cfg</filename>
directory. The temporary directory can be
anywhere where the "bin" user can write to.</para>
<para>Also in this file, you can change the port used to serve up the
Information Center, in case you change your mind later on about the one
you set up during the install. Just change the DB2_ECLIPSEIC_PORT
parameter to the new number (though it must be a port under the maximum of
65535).</para>
<para>After making any changes, do a <screen>/etc/init.d/db2icdv9 restart</screen>
to have your changes picked up by the Information Center (see below for
more details on the db2icd daemon).</para>
</sect3>
</sect2>
<sect2>
<title>The Information Center daemon</title>
<para>The Information Center daemon is set up during installation and is
used to launch the background process that runs the Information Center. The
daemon script, named <command>db2icdv9</command> is installed to the <filename
class='directory'>/etc/init.d/</filename> directory, and start up symbolic
links are added to the <filename
class='directory'>/etc/init.d/rc.X/</filename> run-level folders. By
default, the daemon is turned on for run-levels 3 and 5. You can modify
these run-levels with any system init utility (<command>chkconfig</command>,
<command>ntsysv</command>, or any of the X-based variants).</para>
<para>There are 5 commands you can pass to the daemon:
<orderedlist>
<listitem>
<para>start &mdash; Starts the Information Center, using the
configuration parameters set in the /opt/ibm/db2ic/V9/cfg/db2ic.conf
file.</para>
</listitem>
<listitem>
<para>stop &mdash; Halts a running Information Center.</para>
</listitem>
<listitem>
<para>restart &mdash; A combination command that stops, then
starts the daemon again.</para>
</listitem>
<listitem>
<para>reload &mdash; Same as restart.</para>
</listitem>
<listitem>
<para>status &mdash; Provides information on whether the Information
Center is running, and if it is running, what the process IDs (PID)
are.</para>
</listitem>
</orderedlist>
</para>
</sect2>
<sect2>
<title>Accessing an installed Information Center</title>
<para>There are three possible methods to access the DB2
Information Center:
<itemizedlist>
<listitem>
<para>Via the publib.boulder.ibm.com Web site (this is
the default option enabled during a DB2 installation)</para>
</listitem>
<listitem>
<para>Via an intranet machine that is hosting the DB2
Information Center within your own organization</para>
</listitem>
<listitem>
<para>Via an Information Center that is installed and set up on your
local machine</para>
</listitem>
</itemizedlist>
You can configure which access method will be used, either during the DB2
installation (only by specifying a "Custom" installation), or afterwards
in the tools configuration panel (in the GUI tools), or from the command
line.</para>
<para>To make the change using the GUI tools (Control Center), open the
<command>Tools</command> menu, select <command>Tools Settings</command>,
and then the <command>Documentation</command> tab. On this panel, you can specify a host URL
and port where an Information Center can be found. When putting a hostname
in, do not add the "http://" prefix, or any
subdirectories &ndash; just type in the hostname, and the internal code
will do the rest.</para>
<para>To change the access points from the command line, execute these
commands:
<screen>db2set DB2_DOCHOST=<varname>host_URL</varname>
db2set DB2_DOCPORT=<varname>host_port</varname></screen>
where <varname>host_URL</varname> is the location hostname of the Information Center. This
could be: mydocserver.myorg.net or localhost (for a local installation),
and <varname>host_port</varname> is the port number where the Information Center was
installed.</para>
<para>By default, these DB2 environment settings are blank, which means
that DB2 defaults to the
http://publib.boulder.ibm.com/infocenter/db2help/ Web site.</para>
<para>To invoke the DB2 Information Center from the GUI tools, click on
the "?" icon in the toolbar, any of the "Help" hyperlinks or buttons, or
by selecting any of the menu items in the "Help" menu.</para>
<para>To invoke the DB2 Information Center from the command line, issue
any of these commands:
<simplelist type="vert">
<member>db2icdocs</member>
<member>db2help</member>
<member>db2ic</member>
<member>db2cc -ic</member>
</simplelist>
</para>
</sect2>
</sect1>
<sect1 id='uninstalling'>
<title>Removing DB2 Express-C</title>
<para>Uninstalling DB2 Express-C is a bit more detailed than the installation
process. Unfortunately, at this time, there is no GUI-based uninstaller
utility like there is for installation. Follow the steps below to completely
remove the DB2 Express-C software from your system. Since the database files
are kept in the home directory of the instance user, you can keep the database
files by skipping the removal of the instance owner (the last step).</para>
<orderedlist>
<listitem>
<para>Remove the Database Administration Server. Switch to the DAS owner
(dasusr1 by default), either through the <command>su - dasusr1</command>
command or by logging in to the system directly as the DAS user, and issue
the command <command>db2admin stop</command>. Then switch to the root
user, and issue the
<command>/opt/ibm/db2/V9.1/instance/dasdrop</command> command.</para>
</listitem>
<listitem>
<para>Remove the DB2 instance(s). Switch to the instance owner
(db2inst1 by default), either through the <command>su - db2inst1</command>
command or by logging in to the system directly as the instance user, and
issue the command <command>db2stop</command>. Then, as root, remove the
instance by issuing the <command>/opt/ibm/db2/V9.1/instance/db2idrop
db2_instance</command> command, where <varname>db2_instance</varname>
refers to the actual instance name you want to drop (for example,
/opt/ibm/db2/V9.1/instance/db2idrop db2inst1). If you want to verify which
instances are present on your system, run the
<command>/opt/ibm/db2/V9.1/instance/db2ilist</command> command.</para>
</listitem>
<listitem>
<para>Remove the software installation. As root, run the
<command>/opt/ibm/db2/V9.1/install/db2_deinstall -a</command> command. This will
remove the installation of DB2 from your system.</para>
</listitem>
<listitem>
<para>If no longer need the DB2 database files (which are kept in the home
directory of the instance owner), you can remove the users that were
created during the installation of DB2 Express-C by entering these commands
as root:<screen>userdel -r db2inst1
userdel -r dasusr1
userdel -r db2fenc1</screen>(If you created different user names during
installation, substitute as necessary.)</para>
</listitem>
</orderedlist>
</sect1>
<sect1 id="using">
<title>Using DB2 </title>
<para>This section gives you the basic information you need to start working
with DB2 Express-C on Linux. It includes instructions on issuing DB2 commands and SQL
statements from the command line, as well as the commands you need to start
the DB2 Control Center and the DB2 Information Center. For more information
about general DB2 usage, please investigate the DB2 manuals and Information
Center.</para>
<sect2>
<title>DB2 Control Center</title>
<para>To start the DB2 Control Center:
<orderedlist>
<listitem><para>
Ensure you are logged on to your Linux workstation using either
the DB2 Administration Server user ID (dasusr1 by default) or the DB2
instance user ID (db2inst1 by default). If you use the
<command>su</command> command to change to one of those users, ensure
you include the -l parameter to initialize the proper user
environment.
</para></listitem>
<listitem><para>
Start the X server, if it is not already started.
</para></listitem>
<listitem><para>
Start a terminal session, or type <command>Alt + F2</command> to bring
up the Linux "<command>Run Command</command>" dialog.
</para></listitem>
<listitem><para>
Type <command>db2cc</command> to start the DB2 Control Center.
</para></listitem>
</orderedlist>
</para>
<para>The left side of the DB2 Control Center provides an
object based view of the database objects that you have catalogued,
including DB2 instances and databases on other DB2 servers.
</para>
<para>One way to add, edit, or drop database objects is to right-click on
the object to bring up a context menu.</para>
</sect2>
<sect2>
<title>DB2 Information Center</title>
<para>As mentioned above, the new DB2 Information Center is a revamped
documentation display system that now encapsulates the task, concept and
reference information required to properly run DB2 . It can be installed
locally, on an intranet server, or accessed directly from the ibm.com
hosting service.</para>
<para>To start the DB2 Information Center:
<orderedlist>
<listitem>
<para>Ensure you are logged on to your Linux workstation using either
the DB2 Administration Server user ID (dasusr1 by default) or the DB2
instance user ID (db2inst1 by default). If you use the
<command>su</command> command to change to one of those users, ensure
you include the -l parameter to initialize the proper user
environment.</para>
</listitem>
<listitem>
<para>Ensure that the X server is started, as the Information
Center requires a Web browser.</para>
</listitem>
<listitem>
<para>Issue one of the launch commands:
<simplelist type="vert">
<member>db2icdocs</member>
<member>db2help</member>
<member>db2ic</member>
<member>db2cc -ic</member>
</simplelist>
</para>
</listitem>
</orderedlist>
Alternatively, you can launch the Information Center from within the
Control Center (or any of the other GUI tools), by clicking an item under
the "Help" menu, or by clicking on the "?" (question mark) icon.</para>
<para>If you did not install the DB2 Information Center, or have not
configured your tools to use a different server, then these commands will launch
a detected browser, and take you directly to the IBM hosted DB2 Information
Center at <ulink
url='http://publib.boulder.ibm.com/infocenter/db2help/'>http://publib.boulder.ibm.com/infocenter/db2help/</ulink>.</para>
</sect2>
<sect2>
<title>DB2 command line processor (CLP)</title>
<para>If you are logged on to your Linux workstation using either the
DB2 Administration Server user ID or the DB2 instance user ID, you can
issue DB2 commands and SQL statements from the command line.</para>
<para>If this is your first time using DB2 , I would suggest creating
the DB2 sample database. The sample database is used
throughout the DB2 documentation and is required by most of the sample
applications.</para>
<para>To create the sample database, you can either select the <command>Create
the SAMPLE database</command> option from the DB2 First Steps launchpad, or by
issuing the <command>db2sampl</command> command from the command line.</para>
<para>Before you can issue an SQL statement, you have to connect to a
database. To connect to a database, enter the command:
<screen>db2 CONNECT TO database USER userID USING password</screen>
</para>
<para>To connect to a database, and have DB2 prompt you for the password,
issue the command:
<screen>db2 CONNECT TO database USER userID</screen>
</para>
<para>To connect to a database using the default user ID, issue the
command:
<screen>db2 CONNECT TO database</screen>
</para>
<para>Once you have connected to a database, you can then issue SQL
statements or DB2 commands against that database. For example, to select
all of the rows from the EMPLOYEE table in the SAMPLE database, issue
this command:
<screen>db2 "SELECT * FROM employee"</screen>
</para>
<para>You can avoid typing db2 as the prefix for every SQL statement and
DB2 command by issuing DB2 commands using the Command Line Processor
(CLP). To start the CLP, issue the <command>db2</command> command by itself
from a Linux command line terminal. DB2 provides the following prompt:
<screen>You can issue database manager commands and SQL statements
from the command prompt. For example:
db2 => connect to sample
db2 => bind sample.bnd
For general help, type: ?.
For command help, type: ? command, where command can be
the first few keywords of a database manager command. For example:
? CATALOG DATABASE for help on the CATALOG DATABASE command
? CATALOG for help on all of the CATALOG commands.
To exit db2 interactive mode, type QUIT at the command prompt. Outside
interactive mode, all commands must be prefixed with 'db2'.
To list the current command option settings, type LIST COMMAND OPTIONS.
For more detailed help, refer to the Online Reference Manual.
db2 =></screen>
</para>
<para>Some users prefer to avoid the CLP because it prevents using the
command line history features of the shell.</para>
<para>Some users claim that running the CLP within an Emacs shell gives
them the best of both worlds: they get command line history, and they
don't have to escape commands that contain lots of quotation marks and
brackets, but your mileage may vary.</para>
</sect2>
</sect1>
<sect1 id="tests">
<title id="tests.title">Installation and operation test plan</title>
<para></para>
<sect2>
<title>DB2 Express-C installation tests</title>
<orderedlist>
<listitem><para>Log on as root (or gain root access through a terminal if a root
logon is not available)</para></listitem>
<listitem><para>Mount the DVD (if installing from Discovery DVD set), or
download the appropriate Linux compressed image (tar.gz file) from the DB2
Express-C download site</para></listitem>
<listitem><para>Copy the compressed image file to the <filename>/tmp</filename>
directory</para></listitem>
<listitem><para>Extract the files from the compressed image, either using the
Ark GUI tool or using the console command <command>tar zxvf
db2exc_91_LNX_x86.tar.gz</command></para></listitem>
<listitem><para>Inside the <filename>/tmp </filename> folder, change to the
<filename>exp/disk1i </filename> directory and run the
<command>db2setup</command> command:
<screen>./db2setup</screen>
</para></listitem>
<listitem><para>In the DB2 setup Launchpad, choose <command>Install a Product</command>
</para></listitem>
<listitem><para>Choose <command>Install New</command></para></listitem>
<listitem><para>Click "<command>Next</command>"</para></listitem>
<listitem><para>Verify the license and change the radio button to
<command>Accept</command>, then choose
"<command>Next</command>" to continue the installation</para></listitem>
<listitem><para>Choose a <command>Typical</command> installation and click
"<command>Next</command>"</para></listitem>
<listitem><para>Verify the install path, or change it to some point on your
system with at least 470 MB free, click
"<command>Next</command>"</para></listitem>
<listitem><para>Set up the DAS (DB2 Administration Server) owner account. You
can use an existing user, or set up a new one (the default user is
'dasusr1'). Click "<command>Next</command>"</para></listitem>
<listitem><para>Create a DB2 instance. Click
"<command>Next</command>"</para></listitem>
<listitem><para>Set up the DB2 instance owner account. Again, you can use an
existing user, or set up a new one (the default instance owner is
'db2inst1'). Click "<command>Next</command>"
</para></listitem>
<listitem><para>Set up the DB2 fenced user account. Same as before, use an
existing user or set up a new one. Click
"<command>Next</command>"</para></listitem>
<listitem><para>Click "<command>Finish</command>" to initiate the install</para></listitem>
<listitem><para>If there are any problems with the installation, it will show up
in the installation log (the log is also kept in the
<filename>/tmp</filename> directory as <filename>db2setup.log</filename>
and <filename>db2setup.err</filename>)</para></listitem>
</orderedlist>
</sect2>
<sect2>
<title>DB2 Express-C operation tests</title>
<orderedlist>
<listitem><para>Log in as the DB2 instance owner (db2inst1 by default)</para></listitem>
<listitem><para>Open a terminal and run 'db2sampl' to create the SAMPLE database</para></listitem>
<listitem><para>Test terminal based commands:
<orderedlist>
<listitem><para>db2 connect to sample</para></listitem>
<listitem><para>db2 'select * from dept'</para></listitem>
</orderedlist>
</para></listitem>
<listitem><para>Test DB2 Control Center:
<orderedlist>
<listitem><para>Open the control center with 'db2cc' command</para></listitem>
<listitem><para>Select the "Advanced" view</para></listitem>
<listitem><para>Verify the SAMPLE database is present under the "All databases" tab</para></listitem>
<listitem><para>Look at the contents of one of the SAMPLE database tables and
views (e.g. vphone)</para></listitem>
</orderedlist>
</para></listitem>
<listitem><para>Create TOOLS database:
<screen>db2 'create tools catalog TOOLS create new database TOOLSDB'</screen>
</para></listitem>
<listitem><para>Launch DB2 Task Center:
<orderedlist>
<listitem><para>Create a task that issues a simple query like "connect to sample; select tabname from syscat.tables; connect reset;", schedule to run now</para></listitem>
<listitem><para>Click on "show results", no errors should exist</para></listitem>
</orderedlist>
</para></listitem>
<listitem><para>Launch DB2 Journal: You should be able to see the results of the
task you ran in the task center from the Journal.</para></listitem>
<listitem><para>Test DB2 Configuration Assistant
<orderedlist>
<listitem><para>Start Configuration Assistant from the Control Center, or with <command>db2ca</command></para></listitem>
<listitem><para>You should see the SAMPLE database listed, if not, click View, then Refresh.</para></listitem>
<listitem><para>Right click on the SAMPLE database, choose Change Database,
then in step 4 of the wizard, register the database as a CLI/ODBC
source, and catalog as system data source. Click Finish to commit the
changes</para></listitem>
<listitem><para>Right click on the SAMPLE database again, and click on Test
Connection. Select all types (Standard (ODBC), CLI, JDBC), then type in
a userid and password, and click on Test Connection. Ensure all tests
are successful.</para></listitem>
</orderedlist>
</para></listitem>
<listitem><para>Test DB2 trace facility: <command>db2trc on</command> -- check
for positive response, then run <command>db2trc off</command></para></listitem>
<listitem><para>Test DB2 problem determination facility: <command>db2pd -db
sample > sample.txt</command> (examine output for errors)</para></listitem>
<listitem><para>Test DB2 license: <command>db2licm -l</command> should return:
<screen>
Product name: "DB2 Express Edition"
License type: "Unwarranted"
Expiry date: "Permanent"
Product identifier: "db2exp"
Version information: "9.1"
Max number of CPUs: "2"
</screen>
</para></listitem>
<listitem><para>Test <command>db2dart</command>:
<screen>db2 force applications all
db2dart sample</screen>
(should report that DB2DART processing has completed successfully)
</para></listitem>
<listitem><para>Test db2look facility: <command>db2look -d sample -e >
sample.ddl</command> (should complete successfully)</para></listitem>
<listitem><para>Test remote connections:
<orderedlist>
<listitem><para>Create connection through command prompt on DB2 remote
client system:
<screen>db2 catalog tcpip node test remote computername server 50001
db2 catalog db sample at node test</screen>
</para></listitem>
<listitem><para>From remote machine:
<screen>db2 connect to sample
db2 "select * from dept"</screen>
</para></listitem>
</orderedlist>
</para></listitem>
<listitem><para>Reboot server and retest via remote connection (to verify DB2
instance autostart and that any firewall changes stick)
</para></listitem>
</orderedlist>
</sect2>
</sect1>
<sect1 id="resources">
<title id="resources.title">Resources</title>
<para>This section lists available additional resources for information on
using DB2 Express-C 9 for Linux:</para>
<sect2>
<title>Forums and Newsgroups</title>
<itemizedlist>
<listitem>
<para>IBM developerWorks forums</para>
<para><ulink url="http://www.ibm.com/developerworks/forums/db2_forums.jsp">http://www.ibm.com/developerworks/forums/db2_forums.jsp</ulink></para>
<para>This page lists the available developerWorks hosted web forums.
Many of them are mirrors of the regular Usenet DB2 newsgroups.</para>
</listitem>
<listitem>
<para>DB2 Express-C developerWorks forum</para>
<para><ulink url="http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=805&amp;cat=81">http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=805&amp;cat=81</ulink></para>
<para>The main site for DB2 Express-C support questions. All support
functionality for unwarranted versions of Express-C comes from this
community support forum. Lots of IBM developers (including the DB2
Express-C team) regularly monitor and participate in this forum.</para>
</listitem>
<listitem>
<para>DB2 9 developerWorks forum</para>
<para><ulink url="http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=842&amp;cat=81">http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=842&amp;cat=81</ulink></para>
<para>The forum for general DB2 9 questions. Lots of DB2 developers
regularly monitor and participate in this forum.</para>
</listitem>
<listitem>
<para>comp.databases.ibm-db2</para>
<para>Covers the use of DB2 on all platforms, including Linux
and UNIX, Windows, z/OS, iSeries, and pSeries. This forum is
quite active.</para>
</listitem>
<listitem>
<para>ibm.software.db2.udb</para>
<para>Similar to comp.databases.ibm-db2, but handles questions
specific to the DB2 Universal Database product only.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2>
<title>Web sites</title>
<itemizedlist>
<listitem>
<para>DB2 Universal Database for Linux</para>
<para><ulink
url="http://www.ibm.com/software/data/db2/linux/">http://www.ibm.com/software/data/db2/linux</ulink></para>
<para>The home portal for DB2 information on Linux.</para>
</listitem>
<listitem>
<para>DB2 Express-C</para>
<para><ulink
url='http://www.ibm.com/software/data/db2/express/'>http://www.ibm.com/software/data/db2/express</ulink></para>
<para>Main web portal for the DB2 Express-C product, including downloads
of the DB2 Express-C software and related utilities.</para>
</listitem>
<listitem>
<para>DB2 Information Center</para>
<para><ulink url='http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp'>
http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp</ulink>
</para>
<para>The DB2 Information Center is the most current source of official
DB2 documentation in 29 different languages. Set your browser language
preference and the site will return the translated version of a given
page if it is available, falling back to English content if not. Access
to the information is offered via search, navigation tree, or a
comprehensive <ulink url='http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.doc/doc/r0024231.htm'>
master index</ulink>.</para>
</listitem>
<listitem>
<para>DB2 Linux validation site</para>
<para><ulink url='http://www.ibm.com/software/data/db2/linux/validate/'>
http://www.ibm.com/software/data/db2/linux/validate/</ulink></para>
<para>Information regarding IBM recommended and validated Linux
distributions for the current version of DB2.</para>
</listitem>
<listitem>
<para>DB2 Online Support</para>
<para><ulink
url='http://www.ibm.com/software/data/db2/udb/support.html'>http://www.ibm.com/software/data/db2/udb/support.html</ulink></para>
<para>The official support channel for DB2 for Linux, UNIX and Windows.
Contains information and downloads regarding Fixpaks, APARs, Technotes,
DB2 Flashes, and more.
</para>
</listitem>
<listitem>
<para>DB2 PDF Manuals</para>
<para><ulink
url='http://www-1.ibm.com/support/docview.wss?rs=71&amp;uid=swg27009552'>http://www-1.ibm.com/support/docview.wss?rs=71&amp;uid=swg27009553</ulink></para>
<para>If you like your information in discrete chunks, this is the place
to get official DB2 manuals in PDF format.
</para>
</listitem>
<listitem>
<para>DB2 for Linux white papers</para>
<para><ulink
url='http://www.ibm.com/software/data/db2/linux/papers.html'>http://www.ibm.com/software/data/db2/linux/papers.html</ulink></para>
<para>White papers typically provide overviews or introductions
to new technology or new releases of a product.</para>
</listitem>
<listitem>
<para>DB2 Magazine</para>
<para><ulink
url='http://www.db2mag.com'>http://www.db2mag.com</ulink></para>
<para>This Web site is the online version of DB2 Magazine, which
publishes articles about using DB2 on Linux and other platforms.
You can also sign up for a free subscription to the print
version of the magazine.</para>
</listitem>
<listitem>
<para>IBM developerWorks for DB2</para>
<para><ulink
url='http://www.ibm.com/developerworks/db2/'>http://www.ibm.com/developerworks/db2/</ulink>
</para>
<para>A great resource for tutorials, learning resources, help,
and tips for improving DB2 and developing DB2-based
applications.</para>
</listitem>
<listitem>
<para>International DB2 Users Group (IDUG)</para>
<para><ulink
url='http://www.idug.org/wps/portal/idug'>http://www.idug.org</ulink></para>
<para>IDUG holds a number of international conferences on DB2
and has regional user groups. While IDUG has traditionally
focused on DB2 for z/OS and iSeries, they have increasingly
included information on DB2 for Linux, UNIX, and Windows. The
IDUG Web site includes online discussion forums and links to
other DB2 resources.</para>
</listitem>
<listitem>
<para>Red Hat Linux</para>
<para><ulink
url='http://www.redhat.com'>http://www.redhat.com</ulink></para>
<para>Home to the Red Hat Linux distribution.</para>
<para>Also see <ulink
url='http://www.redhat.com/rhn/'>http://www.redhat.com/rhn/</ulink>(the
Red Hat Network) for more information on system updates and
kernel information.</para>
</listitem>
<listitem>
<para>SUSE Linux</para>
<para><ulink
url='http://www.novell.com/linux/'>http://www.novell.com/linux/</ulink></para>
<para>Now a Novell business, this site is the home for the SUSE
Linux distribution.</para>
<para>Also see <ulink
url='http://support.novell.com/patches.html'>http://support.novell.com/patches.html</ulink>
for more information on system updates and kernel
information.</para>
</listitem>
<listitem>
<para>Ubuntu Linux</para>
<para><ulink
url='http://www.ubuntu.com/'>http://www.ubuntu.com/</ulink></para>
<para>Home to the Ubuntu Linux distribution. </para>
<para>Ubuntu is a community developed, Linux-based operating system that
is rapidly emerging as a favorite distributions, particularly amongst
new users.</para>
</listitem>
<listitem>
<para>Fedora Project</para>
<para><ulink
url='http://fedoraproject.org/'>http://fedoraproject.org/</ulink></para>
<para>Home to the Fedora Project Linux distribution. </para>
<para>The Fedora Project is a collection of projects sponsored by Red
Hat and developed as a partnership between the open source community and
Red Hat engineers.
</para>
</listitem>
<listitem>
<para>Mandriva Linux</para>
<para><ulink
url='http://www.mandriva.com/'>http://www.mandriva.com/</ulink></para>
<para>Home to the Mandriva Linux distribution. </para>
<para>Mandriva's key product is the Mandriva Linux distribution. It is
available in individual user and enterprise versions. The company also
provides and maintains a completely free version called Free
Mandriva.</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="gfdl">
<title>GNU Free Documentation License</title>
<titleabbrev>Version 1.2, November 2002</titleabbrev>
<para>Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.</para>
<para>59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</para>
<para>Everyone is permitted to copy and distribute verbatim copies of
this license document, but changing it is not allowed.</para>
<sect2>
<title>PREAMBLE</title>
<para>The purpose of this License is to make a manual, textbook, or
other functional and useful document "free" in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it, with
or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible for
modifications made by others.</para>
<para>This License is a kind of "copyleft", which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft license
designed for free software.</para>
<para>We have designed this License in order to use it for manuals for
free software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does. But this License is not limited to software manuals; it
can be used for any textual work, regardless of subject matter or
whether it is published as a printed book. We recommend this License
principally for works whose purpose is instruction or
reference.</para>
</sect2>
<sect2>
<title>APPLICABILITY AND DEFINITIONS</title>
<para>This License applies to any manual or other work, in any
medium, that contains a notice placed by the copyright holder saying it
can be distributed under the terms of this License. Such a notice
grants a world-wide, royalty-free license, unlimited in duration, to use
that work under the conditions stated herein. The "Document", below,
refers to any such manual or work. Any member of the public is a
licensee, and is addressed as "you". You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.</para>
<para>A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.</para>
<para>A "Secondary Section" is a named appendix or a front-matter
section of the Document that deals exclusively with the relationship of
the publishers or authors of the Document to the Document's overall
subject (or to related matters) and contains nothing that could fall
directly within that overall subject. (Thus, if the Document is in part
a textbook of mathematics, a Secondary Section may not explain any
mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.</para>
<para>The "Invariant Sections" are certain Secondary Sections whose
titles are designated, as being those of Invariant Sections, in the
notice that says that the Document is released under this License. If a
section does not fit the above definition of Secondary then it is not
allowed to be designated as Invariant. The Document may contain zero
Invariant Sections. If the Document does not identify any Invariant
Sections then there are none.</para>
<para>The "Cover Texts" are certain short passages of text that are
listed, as Front-Cover Texts or Back-Cover Texts, in the notice that
says that the Document is released under this License. A Front-Cover
Text may be at most 5 words, and a Back-Cover Text may be at most 25
words.</para>
<para>A "Transparent" copy of the Document means a machine-readable
copy, represented in a format whose specification is available to the
general public, that is suitable for revising the document
straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available
drawing editor, and that is suitable for input to text formatters or for
automatic translation to a variety of formats suitable for input to text
formatters. A copy made in an otherwise Transparent file format whose
markup, or absence of markup, has been arranged to thwart or discourage
subsequent modification by readers is not Transparent. An image format
is not Transparent if used for any substantial amount of text. A copy
that is not "Transparent" is called "Opaque".</para>
<para>Examples of suitable formats for Transparent copies include plain
ASCII without markup, Texinfo input format, LaTeX input format, SGML or
XML using a publicly available DTD, and standard-conforming simple HTML,
PostScript or PDF designed for human modification. Examples of
transparent image formats include PNG, XCF and JPG. Opaque formats
include proprietary formats that can be read and edited only by
proprietary word processors, SGML or XML for which the DTD and/or
processing tools are not generally available, and the machine-generated
HTML, PostScript or PDF produced by some word processors for output
purposes only.</para>
<para>The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in formats
which do not have any title page as such, "Title Page" means the text
near the most prominent appearance of the work's title, preceding the
beginning of the body of the text.</para> <para>A section "Entitled XYZ"
means a named subunit of the Document whose title either is precisely
XYZ or contains XYZ in parentheses following text that translates XYZ in
another language. (Here XYZ stands for a specific section name mentioned
below, such as "Acknowledgements", "Dedications", "Endorsements", or
"History".) To "Preserve the Title" of such a section when you modify
the Document means that it remains a section "Entitled XYZ" according to
this definition.</para>
<para>The Document may include Warranty Disclaimers next to the notice
which states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this License,
but only as regards disclaiming warranties: any other implication that
these Warranty Disclaimers may have is void and has no effect on the
meaning of this License.</para>
</sect2>
<sect2>
<title>VERBATIM COPYING</title>
<para>You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies to
the Document are reproduced in all copies, and that you add no other
conditions whatsoever to those of this License. You may not use
technical measures to obstruct or control the reading or further copying
of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough
number of copies you must also follow the conditions in section
3.</para>
<para>You may also lend copies, under the same conditions stated above,
and you may publicly display copies.</para>
</sect2>
<sect2>
<title>COPYING IN QUANTITY</title>
<para>If you publish printed copies (or copies in media that commonly
have printed covers) of the Document, numbering more than 100, and the
Document's license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all these Cover Texts:
Front-Cover Texts on the front cover, and Back-Cover Texts on the back
cover. Both covers must also clearly and legibly identify you as the
publisher of these copies. The front cover must present the full title
with all words of the title equally prominent and visible. You may add
other material on the covers in addition. Copying with changes limited
to the covers, as long as they preserve the title of the Document and
satisfy these conditions, can be treated as verbatim copying in other
respects.</para>
<para>If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.</para>
<para>If you publish or distribute Opaque copies of the Document
numbering more than 100, you must either include a machine-readable
Transparent copy along with each Opaque copy, or state in or with each
Opaque copy a computer-network location from which the general
network-using public has access to download using public-standard
network protocols a complete Transparent copy of the Document, free of
added material. If you use the latter option, you must take reasonably
prudent steps, when you begin distribution of Opaque copies in quantity,
to ensure that this Transparent copy will remain thus accessible at the
stated location until at least one year after the last time you
distribute an Opaque copy (directly or through your agents or retailers)
of that edition to the public.</para>
<para>It is requested, but not required, that you contact the authors of
the Document well before redistributing any large number of copies, to
give them a chance to provide you with an updated version of the
Document.</para>
</sect2>
<sect2>
<title>MODIFICATIONS</title>
<para>You may copy and distribute a Modified Version of the Document
under the conditions of sections 2 and 3 above, provided that you
release the Modified Version under precisely this License, with the
Modified Version filling the role of the Document, thus licensing
distribution and modification of the Modified Version to whoever
possesses a copy of it. In addition, you must do these things in the
Modified Version:
<orderedlist>
<listitem>
<para>Use in the Title Page (and on the covers, if any) a title
distinct from that of the Document, and from those of previous
versions (which should, if there were any, be listed in the History
section of the Document). You may use the same title as a previous
version if the original publisher of that version gives
permission.</para>
</listitem>
<listitem>
<para>List on the Title Page, as authors, one or more persons or
entities responsible for authorship of the modifications in the
Modified Version, together with at least five of the principal authors
of the Document (all of its principal authors, if it has fewer than
five), unless they release you from this requirement.</para>
</listitem>
<listitem>
<para>State on the Title page the name of the publisher of the
Modified Version, as the publisher.</para>
</listitem>
<listitem>
<para>Preserve all the copyright notices of the Document.</para>
</listitem>
<listitem>
<para>Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.</para>
</listitem>
<listitem>
<para>Include, immediately after the copyright notices, a license
notice giving the public permission to use the Modified Version under
the terms of this License, in the form shown in the Addendum
below.</para>
</listitem>
<listitem>
<para>Preserve in that license notice the full lists of Invariant
Sections and required Cover Texts given in the Document's license
notice.</para>
</listitem>
<listitem>
<para>Include an unaltered copy of this License.</para>
</listitem>
<listitem>
<para>Preserve the section Entitled "History", Preserve its Title, and
add to it an item stating at least the title, year, new authors, and
publisher of the Modified Version as given on the Title Page. If there
is no section Entitled "History" in the Document, create one stating
the title, year, authors, and publisher of the Document as given on
its Title Page, then add an item describing the Modified Version as
stated in the previous sentence.</para>
</listitem>
<listitem>
<para>Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise the
network locations given in the Document for previous versions it was
based on. These may be placed in the "History" section. You may omit a
network location for a work that was published at least four years
before the Document itself, or if the original publisher of the
version it refers to gives permission.</para>
</listitem>
<listitem>
<para>For any section Entitled "Acknowledgements" or "Dedications",
Preserve the Title of the section, and preserve in the section all the
substance and tone of each of the contributor acknowledgements and/or
dedications given therein.</para>
</listitem>
<listitem>
<para>Preserve all the Invariant Sections of the Document, unaltered
in their text and in their titles. Section numbers or the equivalent
are not considered part of the section titles.</para>
</listitem>
<listitem>
<para>Delete any section Entitled "Endorsements". Such a section may
not be included in the Modified Version.</para>
</listitem>
<listitem>
<para>Do not retitle any existing section to be Entitled
"Endorsements" or to conflict in title with any Invariant
Section.</para>
</listitem>
<listitem>
<para>Preserve any Warranty Disclaimers.</para>
</listitem>
</orderedlist>
</para>
<para>If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no material copied
from the Document, you may at your option designate some or all of these
sections as invariant. To do this, add their titles to the list of Invariant
Sections in the Modified Version's license notice. These titles must be
distinct from any other section titles.</para>
<para>You may add a section Entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various parties--for
example, statements of peer review or that the text has been approved by an
organization as the authoritative definition of a standard.</para>
<para>You may add a passage of up to five words as a Front-Cover Text, and a
passage of up to 25 words as a Back-Cover Text, to the end of the list of
Cover Texts in the Modified Version. Only one passage of Front-Cover Text
and one of Back-Cover Text may be added by (or through arrangements made by)
any one entity. If the Document already includes a cover text for the same
cover, previously added by you or by arrangement made by the same entity you
are acting on behalf of, you may not add another; but you may replace the
old one, on explicit permission from the previous publisher that added the
old one.</para>
<para>The author(s) and publisher(s) of the Document do not by this License
give permission to use their names for publicity for or to assert or imply
endorsement of any Modified Version.</para>
</sect2>
<sect2>
<title>COMBINING DOCUMENTS</title>
<para>You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified versions,
provided that you include in the combination all of the Invariant Sections
of all of the original documents, unmodified, and list them all as Invariant
Sections of your combined work in its license notice, and that you preserve
all their Warranty Disclaimers.</para>
<para>The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single copy. If
there are multiple Invariant Sections with the same name but different
contents, make the title of each such section unique by adding at the end of
it, in parentheses, the name of the original author or publisher of that
section if known, or else a unique number. Make the same adjustment to the
section titles in the list of Invariant Sections in the license notice of
the combined work.</para>
<para>In the combination, you must combine any sections Entitled "History"
in the various original documents, forming one section Entitled "History";
likewise combine any sections Entitled "Acknowledgements", and any sections
Entitled "Dedications". You must delete all sections Entitled
"Endorsements".</para>
</sect2>
<sect2>
<title>COLLECTIONS OF DOCUMENTS</title>
<para>You may make a collection consisting of the Document and other
documents released under this License, and replace the individual copies of
this License in the various documents with a single copy that is included in
the collection, provided that you follow the rules of this License for
verbatim copying of each of the documents in all other respects.</para>
<para>You may extract a single document from such a collection, and
distribute it individually under this License, provided you insert a copy of
this License into the extracted document, and follow this License in all
other respects regarding verbatim copying of that document.</para>
</sect2>
<sect2>
<title>AGGREGATION WITH INDEPENDENT WORKS</title>
<para>A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
distribution medium, is called an "aggregate" if the copyright resulting
from the compilation is not used to limit the legal rights of the
compilation's users beyond what the individual works permit. When the
Document is included in an aggregate, this License does not apply to the
other works in the aggregate which are not themselves derivative works of
the Document.</para>
<para>If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of the
entire aggregate, the Document's Cover Texts may be placed on covers that
bracket the Document within the aggregate, or the electronic equivalent of
covers if the Document is in electronic form. Otherwise they must appear on
printed covers that bracket the whole aggregate.</para>
</sect2>
<sect2>
<title>TRANSLATION</title>
<para>Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special permission
from their copyright holders, but you may include translations of some or
all Invariant Sections in addition to the original versions of these
Invariant Sections. You may include a translation of this License, and all
the license notices in the Document, and any Warranty Disclaimers, provided
that you also include the original English version of this License and the
original versions of those notices and disclaimers. In case of a
disagreement between the translation and the original version of this
License or a notice or disclaimer, the original version will prevail.</para>
<para>If a section in the Document is Entitled "Acknowledgements",
"Dedications", or "History", the requirement (section 4) to Preserve its
Title (section 1) will typically require changing the actual title.</para>
</sect2>
<sect2>
<title>TERMINATION</title>
<para>You may not copy, modify, sublicense, or distribute the Document
except as expressly provided for under this License. Any other attempt to
copy, modify, sublicense or distribute the Document is void, and will
automatically terminate your rights under this License. However, parties who
have received copies, or rights, from you under this License will not have
their licenses terminated so long as such parties remain in full
compliance.</para>
</sect2>
<sect2>
<title>FUTURE REVISIONS OF THIS LICENSE</title>
<para>The Free Software Foundation may publish new, revised versions of the
GNU Free Documentation License from time to time. Such new versions will be
similar in spirit to the present version, but may differ in detail to
address new problems or concerns. See http://www.gnu.org/copyleft/.</para>
<para>Each version of the License is given a distinguishing version number.
If the Document specifies that a particular numbered version of this License
"or any laterversion" applies to it, you have the option of following the
terms and conditions either of that specified version or of any later
version that has been published (not as a draft) by the Free Software
Foundation. If the Document does not specify a version number of this
License, you may choose any version ever published (not as a draft) by the
Free Software Foundation.</para>
</sect2>
</sect1>
<sect1 id='trademarks'>
<title>Trademarks</title>
<para>DB2, IBM, pureXML, iSeries, pSeries, zSeries, and z/OS are trademarks or
registered trademarks of International Business Machines Corporation in the
United States, other countries, or both.</para>
<para>Java and all Java-based trademarks are trademarks of Sun Microsystems,
Inc. in the United States, other countries, or both.</para>
<para>Windows is a trademark of Microsoft Corporation in the United States,
other countries, or both.</para>
<para>Intel and Pentium are trademarks of Intel Corporation in the United
States, other countries, or both.</para>
<para>UNIX is a registered trademark of The Open Group in the United States
and other countries.</para>
<para>Linux is a trademark of Linus Torvalds in the United States, other
countries, or both.</para>
<para>Other company, product, or service names may be trademarks or
service marks of others.</para>
</sect1>
</article>