Differences between current version and previous revision of HowToDB2HOWTO.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 3 | Last edited on Monday, October 25, 2004 2:24:08 am | by StuartYeates | |
Older page: | version 2 | Last edited on Friday, June 7, 2002 1:06:26 am | by perry | Revert |
@@ -1,3971 +1 @@
-DB2 Version 7.1 for Linux HOWTO
-!!!DB2 Version 7.1 for Linux HOWTO
-!Dan Scott
-__Revision History__Revision 1.2.42001-06-02Revised by: dbsRunning JDK 1.1.8 on Red Hat 7.1Revision 1.2.32001-04-25Revised by: dbsRed Hat 7.1 install instructions, more DB2 on Debian info,
-connecting to AS/400 databases, buffer pool memory limits, converted
-to !DocBook XML.Revision 1.2.12000-10-25Revised by: dbsBasic Red Hat 7.0 info, additional Debian instructions.Revision 1.22000-09-25Revised by: dbsIBM JDK 1.3 works! More troubleshooting.Revision 1.12000-07-28Revised by: dbsDocumented _SHM_ID_BITS kernel parameter tuning for increasing
-number of available connections. Added basic indexing.Revision 1.02000-07-06Revised by: dbsAdded basic Debian instructions. Corrected some factual, stylistic, and
-grammatical mistakes. Licensed document under GNU GPL. Submitted document to LDP.Revision .72000-04-26Revised by: dbsBased on DB2 V7.1 beta release, wrote install instructions for
-Caldera 2.4, Red Hat 6.2, SuSE 6.2, SuSE 6.3, and !TurboLinux 6..
-
-
-
-
-
-This HOWTO gives you explicit instructions on installing
-DB2 Universal Database Version 7.1 for Linux
-on the following Intel x86-based distributions: Caldera !OpenLinux 2.4,
-Debian, Linux-Mandrake 7.2, Red Hat Linux 6.2, Red Hat Linux 7.1,
-SuSE Linux 6.2, 6.3, and 7., and !TurboLinux 6..
-After installing DB2, you can work with a
-sample database, connect to your DB2 server from a remote machine, and
-administer DB2 using the DB2 Control Center.
-
-
-
-
-
-
-----; __Table of Contents__; 1. Introduction: ; 1.1. Why a DB2 installation HOWTO?; 1.2. Who should read this HOWTO?; 1.3. New versions of this document; 1.4. Copyright and License; 1.5. Credits; 1.6. About the author; 2. Prerequisites: ; 2.1. What are prerequisites?; 3. Preparing your distribution for DB2: ; 3.1. Caldera !OpenLinux 2.4: ; 3.1.1. Before installing DB2 on Caldera !OpenLinux; 3.1.2. Installing DB2 and creating instances on Caldera; 3.1.3. After installing DB2 on Caldera: ; 3.1.3.1. Adding instance user IDs to their groups; 3.1.3.2. Changing the default home page in Netscape; 3.1.3.3. Removing the Caldera login greeting; 3.2. Linux-Mandrake 7.2: ; 3.2.1. Before installing DB2 on Linux-Mandrake; 3.2.2. Installing DB2 and creating instances on Linux-Mandrake; 3.2.3. After installing DB2 on Linux-Mandrake; 3.3. Red Hat Linux 6.2: ; 3.3.1. Before installing DB2 on Red Hat; 3.3.2. Installing DB2 and creating instances on Red Hat; 3.3.3. After installing DB2 on Red Hat; 3.4. Red Hat Linux 7.1: ; 3.4.1. Before installing DB2 on Red Hat; 3.4.2. Installing DB2 and creating instances on Red Hat; 3.4.3. After installing DB2 on Red Hat; 3.5. SuSE Linux: ; 3.5.1. Before installing DB2 on SuSE; 3.5.2. Installing DB2 and creating instances on SuSE; 3.5.3. After installing DB2 on SuSE; 3.6. !TurboLinux 6.: ; 3.6.1. Before installing DB2 on !TurboLinux; 3.6.2. Installing DB2 on !TurboLinux; 3.6.3. After installing DB2 on !TurboLinux; 4. Installing DB2 using __db2setup__: ; 4.1. Using the __db2setup__ utility; 4.2. Installing DB2 components; 5. Installing DB2 on other Linux distributions; 6. Creating DB2 instances: ; 6.1. Overview of DB2 Administration Server; 6.2. Overview of DB2 instance; 7. Removing DB2; 8. Using DB2: ; 8.1. DB2 Control Center; 8.2. DB2 Information Center; 8.3. The DB2 command line; 9. Troubleshooting: ; 9.1. Problems with DB2 installation; 9.2. Problems creating a DB2 instance; 9.3. Problems using DB2; 9.4. Problems starting the DB2 Control Center; 10. Improving DB2 Version 7.1 performance on Linux: ; 10.1. Increasing maximum connections; 10.2. Creating and configuring buffer pools; 11. Installing the IBM Developer Kit for Java; 12. Using the 2.4 kernel with DB2 Version 7.1; A. Resources; B. GNU General Public License: ; B.1. Preamble: ; B.1.1. GNU GENERAL PUBLIC LICENSE
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION; B.1.2. How to Apply These Terms to Your New Programs----
-!!!1. Introduction
-!!1.1. Why a DB2 installation HOWTO?
-
-Ever since DB2 Version 5.2 was ported to Linux in 1998 and made
-available as a beta download, there has been a lot of interest in
-DB2 on Linux. The beta represented one of IBM's first dips into
-the waters of Linux, and it generated a lot of feedback.
-In fact, if you read through the newsgroups, you still see occasional questions
-from people who are trying out the Version 5.2 beta. (I don't know where they're
-getting it, but they're out there.) And, not surprisingly,
-they run into problems. It was a beta product, after all.
-
-
-
-
-Anyway, I've been trying out DB2 on Linux since Version 5.2, so I've
-had a chance to witness the improvements over the past couple of years.
-I've also made a lot of use of the Linux Documentation Project in that
-time, and wanted to contribute something to the LDP.
-So I decided to write about the one thing that I really know something
-about on Linux, and hope that it helps someone else out there.
-
-
-
-
-DB2 on Linux has come a long way since Version 5.2. The first supported release
-of DB2 on Linux was Version 6.1 in 1999, which removed many of the installation
-hurdles faced by the Version 5.2 beta testers.
-
-
-
-
-DB2 Version 7.1 is the second major release that supports Linux, and since it's
-a new release I'm expecting that a new wave of people curious about DB2,
-as well as people migrating from Version 6.1, are going to try installing
-this new release on Linux. To that end, I'm writing this HOWTO
-to share my experiences and help smooth your installation.
-One of the big boosts comes from the standardization on the
-IBM Developer Kit for Java, which improves the stability of the
-DB2 Control Center and enables application developers to write
-stored procedures and UDFs in Java. DB2 Version 7.1 also introduces the
-ability to write stored procedures in SQL.
-
-
-
-
-As time permits, I hope to provide hints and tips for improving the performance
-of DB2 on Linux, and for configuring the environment on various Linux
-distributions to be able to build DB2 applications in C, C++, and Java.
-
-
-----
-!!1.2. Who should read this HOWTO?
-
-If you plan to install DB2 Version 7.1 on one of the Linux distributions
-supported by IBM, this document is for you. The distributions that
-IBM officially supports are:
-
-
-
-
-
-*
-
-Caldera !OpenLinux 2.4
-
-
-
-*
-*
-
-Red Hat Linux 6.2
-
-
-
-*
-*
-
-SuSE Linux 6.2 and 6.3
-
-
-
-*
-*
-
-!TurboLinux 6.
-
-
-
-*
-
-
-
-
-For Debian and Slackware, I have included ''very'' basic installation
-instructions or links to other resources in Section 5. If you have any
-other installation success stories, please forward me the details
-and I'll try to expand the section. As time permits, I plan to try
-to duplicate and confirm these installation instructions.
-
-
-
-
-If you install DB2 Version 6.1 for Linux and DB2 hangs on the
-__db2start__ command, see
-db2start hangs on Linux distributions built with glibc 2.1. I don't include any other DB2 Version 6.1
-information in this document. If you plan to install DB2 Version 5.2 on Linux,
-''don't''! (Have I emphasized that point enough?
-All right, I'll stop now.) The Personal Developer's Edition
-of DB2 Version 7.1 is available as a free (beer) download from IBM, at the
-DB2
-Universal Database download site.
-Registration is required, and, of course, your copy of DB2 is
-only free as long as you don't use it in a production environment.
-
-
-
-
-This document is really meant to help you install DB2 Version 7.1
-on the previously listed Linux distributions. I've installed
-DB2 on all of the distributions supported by IBM and noted the prerequisites and
-quirks for each of them. I don't go into detail about the
-various features of DB2, or what each installation option means, but
-I do cover the basics that you need to know to get it installed.
-
-
-----
-!!1.3. New versions of this document
-
-I like my friends at the Linux Documentation Project, so you'll
-always be able to find the most up-to-date version of this document
-at the LDP web site.
-
-
-----
-!!1.4. Copyright and License
-
-Copyright (c) 2000 International Business Machines Incorporated.
-
-
-
-
-This document is free documentation; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-This document is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this document; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-
-----
-!!1.5. Credits
-
-Dan Scott is the originator and current maintainer of this HOWTO.
-Please send all suggestions for improvement, criticisms, or more-or-less
-related questions to me at `daniels@REMca.ibm.comb (remove
-''REM'' in my email address before sending).
-Please send all spam or hate mail to /dev/null.
-
-
-
-
-Feedback and suggestions for improvement have been provided by
-Susan Williams, Serge Boivin, Darin !McBride, and Xiaoyan Zhao.
-Ronnie Seagren did an awesome job of editing the original version
-for style and consistency.
-
-
-
-
-Additional thanks to:
-
-
-
-
-
-*
-
-Andika Triwidada for contributing instructions to install
-DB2 V7.1 on Debian using the __rpm__ utility.
-
-
-
-*
-*
-
-Michael Naughton for braving Red Hat 7 and figuring out the
-libncurses.so.4 prerequisite.
-
-
-
-*
-*
-
-Christoph Shmitz for resolving license problems with DB2
-installed via __alien__.
-
-
-
-*
-*
-
-Claus Fischer for solving a DB2 on Debian problem with updating
-instances and contributing cataloging instructions for DB2 on AS/400.
-
-
-
-*
-
-
-----
-!!1.6. About the author
-
-Dan Scott has been employed by IBM Canada as an Information Developer
-since 1998-approximately when DB2 was first ported to Linux. It's
-probably just coincidence.
-He has documented and tested DB2 application development for the bulk
-of that time. In his spare time he can occasionally be found mourning for
-his dearly departed motorcycle, abusing his body on his mountain bike,
-or contemplating how to upgrade his Linux distribution at home (which
-started life as Mandrake 5.3 and has mutated wildly ever since) without
-suffering the wrath of his girlfriend.
-
-
-----
-!!!2. Prerequisites
-!!2.1. What are prerequisites?
-
-Prerequisites are what you, your machine, and your distribution
-require before you will be able to successfully install or use DB2.
-The required prerequisites come straight from
-''IBM DB2 Universal Database for UNIX Quick Beginnings''.
-The suggested prerequisites come from experience.
-For your convenience, I've divided them into hardware and software requirements.
-
-
-
-
-
-
-
-
-__Hardware prerequisites__
-
-; Processor:
-
-x86 compatible (for example, Intel, AMD, or Cyrix).
-I've successfully installed DB2 Version 7.1 on a Pentium Pro 200 and a
-Pentium II 350. Your experiences with other x86 processors would be
-appreciated.
-
-
-; Memory:
-
-For application development, I've found 96 MB of
-RAM is enough to run a small database
-and test out your applications. Even the Control Center
-responds acceptably if your processor speed is fast
-enough. In my case, I was working with a Thinkpad 600 equipped
-with a Pentium 233 MMX processor and 96 MB of RAM.
-However, more memory is recommended if you're putting your
-database into production or running multiple services.
-
-
-; Free disk space:
-
-Of course, this depends on the components you install,
-but for a typical installation of the DB2 Version 7.1 server,
-the Administration Client, the Application Development Client,
-the documentation, and the creation of a sample database,
-you will need about 350 MB of free disk space.
-
-
-
-
-
-
-
-
-__Software prerequisites__
-
-; glibc:
-
-2.1.2 or greater. This can be a tough part of Linux to upgrade on
-its own, so if your current distribution doesn't meet this requirement,
-I would strongly suggest upgrading your entire distribution. For example,
-I tried upgrading only the glibc portion of
-!TurboLinux 4.0 from 2.1.1 to 2.1.3
-and ran into a whole world of trouble.
-
-
-
-
-DB2 Version 7.1 should work with glibc 2.1.1.
-IBM sets prerequisites based on the systems with which they tested.
-
-
-; kernel:
-
-2.2.12 or greater. I've upgraded to both
-2.2.19 and 2.4.3 and recompiled
-the kernel for my own purposes, and DB2 seems to work as well as before.
-
-
-
-
-DB2 Version 7.1 should work with a minimum of kernel 2.2.10.
-IBM sets prerequisites based on the systems with which they tested.
-
-
-; libncurses:
-
-4.x. For __db2setup__ to work correctly,
-this version of the library must be available on your system with the following
-pathname: /usr/lib/libncurses.so.4.
-
-
-; libstdc++-libc6.1-1.so.2:
-
-A file or symbolic link by this exact name is mandatory.
-On most distributions, this is a symbolic link to libstdc++-2.9..so,
-but on several recent distributions this is a symbolic link to
-libstdc++-2.10..so.
-
-
-__Note: __
-In previous versions of this HOWTO, I stated that the exact version
-of libstdc++-2.9..so was mandatory. I was wrong.
-
-
-
-
-
-; pdksh:
-
-5.2 or greater. This is a public domain version of the
-Korn shell that both the DB2 installer and the DB2 commands
-require. You cannot do anything with DB2 without installing pdksh.
-
-
-; rpm:
-
-3.0 or greater. DB2 for Linux is distributed
-as a number of RPM packages, so you won't get far without
-this piece of software. For information on installing DB2 on distributions
-without using RPM, see Section 5.
-
-
-; Java:
-
-The IBM Developer Kit for Java, 1.1.8 or
-1.3, is an optional component, but is required to:
-
-
-
-
-
-*
-
-use the DB2 Control Center to administer your databases using
-a graphical user interface
-
-
-
-*
-*
-
-create or run Java applications, including stored procedures
-and user-defined functions
-
-
-
-*
-
-
-
-
-As of this writing, the minimum required level of the
-IBM Developer Kit for Java 1.1.8 is the March 22, 2000 release.
-You can get the IBM Developer Kit and Runtime Environment
-for Linux, Java Technology Edition, from the IBM Java Developer Kit
-downloads web site as follows:
-
-
-
-
-
-*
-
-Version 1.1.8
-
-
-
-*
-*
-
-Version 1.3
-
-
-
-*
-
-
-
-
-''Please note'': Other versions of Java, such
-as the Blackdown or Sun JDKs, have not been tested with DB2 and
-are not supported by IBM. And no, none of the distributions
-I have seen so far package the IBM JDK. But do yourself a favour,
-and get the IBM Developer Kit for Java.
-
-
-;
-Web browser:
-
-DB2 calls the __netscape__ command when you:
-
-
-
-
-
-*
-
-display the online help for the DB2 Control Center
-
-
-
-*
-*
-
-display information using the DB2 Information Center
-
-
-
-*
-The easiest approach is to install Netscape Navigator or Communicator
-on your system. Netscape version 4.72 or above
-is required to display the Business Intelligence Quick Tour, because of
-its extreme use of !JavaScript.
-
-
-
-
-To use a browser other than Netscape to display online help
-or information, create a link called netscape
-to your preferred browser executable. The link must appear in
-your PATH. For example, to display online help with __mozilla__,
-you could create a link in /usr/local/bin
-with the following command:
-
-bash# ln -s /usr/bin/mozilla-bin /usr/local/bin/netscape
-
-
-
-
-In the following table:
-
-
-
-
-
-*
-
-unknown indicates that I don't
-know what the default level is, and I haven't installed DB2 on this distribution
-(your feedback is welcome!)
-
-
-
-*
-*
-
-okay indicates that I don't
-know what the default level is, but it worked when I installed DB2
-
-
-
-*
-*
-
-** as a prefix indicates that the default level is not acceptable
-and must be replaced or supplemented with a compatible library
-
-
-
-*
-
-
-
-
-__Table 1. Prerequisite levels, by distribution__
-
-
-!DistributionglibcLinux kernellibncurseslibstdc++-libc6.1-1.sopdkshrpmCaldera !OpenLinux 2.42.1.22.2.14okay2.9.05.2.14okayDebian 2.22.1.32.2.17okay2.10.05.2.143..3Linux-Mandrake 7.22.1.32.2.17okay (4, 4.2, 5, 8 5.1)2.95.2.143..5Red Hat 6.22.1.22.2.14okay2.9.05.2.14okayRed Hat 72.1.922.2.16**5.1**2.9.65.2.144.0Red Hat 7.12.2.22.4.2**5.2**2.9.65.2.144..2SuSE 6.22.1.12.2.10unknown2.9.05.2.14okaySuSE 6.32.1.22.2.13okay2.9.05.2.14okaySuSE 7.0unknown2.2.17okayunknown5.2.14okayTurboLinux 6.02.1.22.2.13okay2.9.05.2.14okay----
-!!!3. Preparing your distribution for DB2
-!!3.1. Caldera !OpenLinux 2.4
-!3.1.1. Before installing DB2 on Caldera !OpenLinux
-
-This section contains instructions that you must follow ''before'' installing DB2.
-
-
-
-
-__Preparing for the installation of DB2__
-
-
-#
-
-Install the pdksh-5.2.14-1.i386.rpm
-package from the Caldera !OpenLinux CD-ROM in the
-/Packages/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the pdksh package:
-
-bash# rpm -ivh /mnt/cdrom/Packages/RPMS/pdksh-5.2.14-1.i386.rpm
-
-
-
-#
-#
-
-Remove the jdk package, (JDK 1.2.2 from Sun), since
-it will conflict with the IBM Developer Kit for Java that you will
-install in the next step. To remove Sun's JDK, issue the following command
-as root:
-bash# rpm -e jdk
-
-
-
-#
-#
-
-Install the IBM Developer Kit for Java. A brief set of installation
-directions is included in Section 11.
-
-
-
-#
-#
-
-Edit the ''JAVA_HOME'' and ''PATH'' entries
-in /etc/config.d/shells/bashrc to remove
-the references to the JDK from Sun and update them to reflect the IBM Developer
-Kit for Java. The section that I changed started as:
-
-
[[ -z "$JAVA_HOME" ]88 [[ -d /usr/java ] 88 (
-export JAVA_HOME=/usr/java
-[[ -r $JAVA_HOME/lib/classes.zip ] 88
-export CLASSPATH=$JAVA_HOME/lib/classes.zip
-)
-
-
-
-
-
-Replace it with the following section to reflect the default
-locations for the IBM Developer Kit for Java:
-
- [[ -z "$JAVA_HOME" ]88 [[ -d /usr/jdk118 ] 88 (
-export JAVA_HOME=/usr/jdk118
-export PATH=$PATH:$JAVA_HOME/bin
-[[ -r $JAVA_HOME/lib/classes.zip ] 88
-export CLASSPATH=$JAVA_HOME/lib/classes.zip
-)
-
-
-
-
-#----
-!3.1.2. Installing DB2 and creating instances on Caldera
-
-Follow the instructions in Section 4 the generic section on installing DB2, and
-go ahead and create the instances. It's probably a good idea at this point
-to read through Section 3.1.3 to keep in mind the steps
-that you need to take after installing DB2.
-
-
-; 3.1.2.1. What does /etc/login.defs not accessible, using defaults mean?
-; 3.1.2.2. Okay, DB2 is installed and I created the instances. Now what do I do?
-
-
-__3.1.2.1. __
-What does /etc/login.defs not accessible, using defaults mean?
-
-
-
-
-__ __
-It means something went slightly wrong, but it's okay.
-You may get this message splashed across your installation
-screen one or more times during the DB2 installation process, but
-other than not looking pretty, DB2 still installs correctly.
-Caldera apparently doesn't include a /etc/login.defs configuration
-file. The file controls the default options for the __useradd__ command
-for adding new users, including policies like how many days before the
-new user's password expires and whether a home directory should be created for a new user.
-For more information on the /etc/login.defs file, refer
-to the __man__ page for __useradd__.
-
-
-
-
-__3.1.2.2. __
-Okay, DB2 is installed and I created the instances. Now what do I do?
-
-
-
-
-__ __
-Now that you've installed DB2, you have to perform some steps to configure
-your instances correctly. Keep reading.
-
-
-----
-!3.1.3. After installing DB2 on Caldera
-
-This section contains instructions that you must follow ''after'' installing DB2.
-
-
-----__3.1.3.1. Adding instance user IDs to their groups__
-
-The most important step is to manually add the instance user ID to
-the corresponding instance group you defined during the instance
-creation step. DB2 and Caldera !OpenLinux don't get this part of the
-DB2 instance creation process right, so you have to do it yourself.
-You can add an instance user ID to an instance group in two ways:
-
-
-
-
-
-*
-
-Edit /etc/group to add the
-appropriate instance user ID to the last field for each group.
-
-
-
-*
-*
-
-Use the COAS utility to manage your
-groups by selecting KDE menu,
-Settings, COAS,
-System, Accounts,
-then selecting the Groups submenu and the
-Manage Groups menu item.
-
-
-
-*
-
-
-----__3.1.3.2. Changing the default home page in Netscape__
-
-The DB2 Control Center and the DB2 Information Center use the
-Netscape browser to display help and documentation. This works
-for the first document you display in the browser, but if you
-try to switch to a different DB2 document (for example, from
-one book to another), you may instead be redirected to the
-default home page set by the Caldera !OpenLinux installation
-process. I found that this problem went away as soon as I changed
-the default home page in the Edit menu,
-Preferences menu item.
-
-
-----__3.1.3.3. Removing the Caldera login greeting__
-
-Add a file called .hushlogin to the
-home directory of each of your instance user IDs. This should prevent
-the Welcome to your !OpenLinux system!
-messages while running DB2 commands.
-
-
-
-
-DB2 generates these messages on Caldera because the DB2 commands run
-under the root user ID, which in turn becomes the instance owner to
-invoke commands. Part of this __su__ process
-calls one or both of /etc/config.d/shells/csh.login
-and /etc/config.d/shells/profile, which in turn
-call the /etc/config.d/shells/OL-greeting script
-that contains the offensive string.
-
-
-
-
-Instead of adding .hushlogin to every
-user's home directory, you could probably edit
-/etc/config.d/shells/OL-greeting
-to remove the message (or change it to something else, if you want).
-I haven't tried it myself, so let me know what works best.
-
-
-----
-!!3.2. Linux-Mandrake 7.2
-
-The DB2 server and command line DB2 client works on Linux-Mandrake 7.2, and I
-was able to successfully start and use the DB2 Control Center with
-IBM JDK 1.1.8 (build 20000713).
-
-
-----
-!3.2.1. Before installing DB2 on Linux-Mandrake
-
-__Preparing for the installation of DB2__
-
-
-#
-
-Install the pdksh-5.2.14-8mdk.i586.rpm
-package from the Linux-Mandrake CD-ROM in the
-/Mandrake/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the pdksh package:
-
-bash# rpm -ivh /mnt/cdrom/Mandrake/RPMS/pdksh-5.2.14-8mdk.i586.rpm
-
-
-
-#----
-!3.2.2. Installing DB2 and creating instances on Linux-Mandrake
-
-When you run __db2setup__, you may receive the following error:
-ksh: /etc/profile.d/tmdir.sh[[9]: source: not found
-
-This is only a warning message and you can continue installing DB2. If the
-message interferes with the __db2setup__ menu, press CTRL-L
-to clear the screen.
-
-
-
-
-Otherwise, follow the instructions in Section 4,
-the generic section on installing DB2 and creating instances.
-
-
-----
-!3.2.3. After installing DB2 on Linux-Mandrake
-
-With Linux-Mandrake 7.2,
-there are no special steps to take after installing DB2 Version 7.1. The DB2
-server and command line client work out of the box, and the DB2 Control Center
-worked with IBM JDK 1.1.8 (build 20000713).
-
-
-----
-!!3.3. Red Hat Linux 6.2
-!3.3.1. Before installing DB2 on Red Hat
-
-__Preparing for the installation of DB2__
-
-
-#
-
-Install the pdksh-5.2.14-2.i386.rpm
-package from the Red Hat CD-ROM in the
-/!RedHat/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the pdksh package:
-
-bash# rpm -ivh /mnt/cdrom/!RedHat/RPMS/pdksh-5.2.14-2.i386.rpm
-
-
-
-#----
-!3.3.2. Installing DB2 and creating instances on Red Hat
-
-Follow the instructions in Section 4,
-the generic section on installing DB2 and creating instances.
-
-
-----
-!3.3.3. After installing DB2 on Red Hat
-
-With Red Hat 6.2,
-you don't need to take any special steps after installing DB2 Version 7.1. It works.
-
-
-----
-!!3.4. Red Hat Linux 7.1
-!3.4.1. Before installing DB2 on Red Hat
-
-__Preparing for the installation of DB2__
-
-
-#
-
-Install the pdksh-5.2.14-12.i386.rpm
-package from Red Hat CD-ROM (2) in the
-/!RedHat/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the pdksh package:
-
-bash# rpm -ivh /mnt/cdrom/!RedHat/RPMS/pdksh-5.2.14-12.i386.rpm
-
-
-
-#
-#
-
-For a compatible version of the libstdc++ library, install the
-compat-egcs-c++-6.2-1.1.2.14.i386.rpm package
-from Red Hat CD-ROM (2) in the
-/!RedHat/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the compat-egcs-c++ package:
-
-bash# rpm -ivh /mnt/cdrom/!RedHat/RPMS/compat-egcs-c++-6.2-1.1.2.14.i386.rpm
-
-
-
-#
-#
-
-Install the compat-libs-6.2-3.i386.rpm
-package from Red Hat CD-ROM (2) in the
-/!RedHat/RPMS/ directory. For
-example, log in as root, mount the CD-ROM, and enter the following command to
-install the compat-libs package:
-
-bash# rpm -ivh /mnt/cdrom/!RedHat/RPMS/compat-libs-6.2-3.i386.rpm
-
-
-
-#
-#
-
-The __db2setup__ command looks for a file called
-/usr/lib/libncurses.so.4 and will not proceed
-unless it exists, so create a symbolic link from the ncurses4.0 library
-in /usr/i386-glibc21-linux/lib/ to
-your /usr/lib/ directory.
-
-bash# ln -sf /usr/i386-glibc21-linux/lib/libncurses.so.4.0 /usr/lib/libncurses.so.4
-
-
-
-
-#
-#
-
-The default setting for the msgmni kernel parameter
-only allows a couple of simultaneous connections to DB2. To set this value
-at at boot time, append the following lines to /etc/sysctl.conf:
-
-# Sets maximum number of message queues to 128
-# Set this to 1024 or higher on production systems
-kernel.msgmni = 128
-
-
-
-
-#----
-!3.4.2. Installing DB2 and creating instances on Red Hat
-
-Follow the instructions in Section 4,
-the generic section on installing DB2 and creating instances.
-
-
-----
-!3.4.3. After installing DB2 on Red Hat
-
-Red Hat 7.1 enabled
-the floating point stack feature of the glibc library. Unfortunately, this
-causes Java programs using IBM JDK 1.1.8, including the DB2 Control Center,
-to fail miserably. Fortunately, you can disable the floating point stack by
-setting the LD_ASSUME_KERNEL environment variable to
-2.2.5 before running the DB2 Control Center as follows:
-
-bash$ export LD_ASSUME_KERNEL=2.2.5
-bash$ db2jstrt 6790
-bash$ db2cc 6790
-
-
-
-
-
-With IBM JDK 1.3 (IBMJava2-SDK-1.3-7.-i386.rpm),
-the DB2 Control Center started successfully without any
-workarounds. For instructions on installing the IBM JDK,
-see Section 11.
-
-
-----
-!!3.5. SuSE Linux
-!3.5.1. Before installing DB2 on SuSE
-
-At some point in its past, SuSE included an old beta version of DB2
-in their distribution. When you install SuSE Linux,
-up to and including version 7., the SuSE installer
-still creates the default DB2 user IDs and sets their home directories
-in /usr/lib. This can cause some
-difficulties when you set up the DB2 instances. Before installing DB2,
-remove the default DB2 user IDs by issuing the following commands as root:
-
-bash# userdel -r db2as
-bash# userdel -r db2fenc1
-bash# userdel -r db2inst1
-
-
-
-----
-!3.5.2. Installing DB2 and creating instances on SuSE
-
-Follow the instructions in Section 4,
-the generic section on installing DB2.
-
-
-----
-!3.5.3. After installing DB2 on SuSE
-
-With SuSE 6.2
-or above, I have not needed to take any special steps after
-installing DB2 Version 7.1. It just works-and that's nice.
-
-
-----
-!!3.6. !TurboLinux 6.
-!3.6.1. Before installing DB2 on !TurboLinux
-
-!TurboLinux 6.0 includes
-all of the required packages at or above the minimum required levels for
-DB2 Version 7.1.
-
-
-----
-!3.6.2. Installing DB2 on !TurboLinux
-
-Follow the instructions in Section 4,
-the generic section on installing DB2.
-
-
-----
-!3.6.3. After installing DB2 on !TurboLinux
-
-When you run the DB2 Control Center with !TurboLinux 6.,
-the console window may display a number of map failed messages.
-These messages do ''not'' indicate a serious problem, so do not
-worry about them.
-
-
-----
-!!!4. Installing DB2 using __db2setup__
-
-The purpose of this section is to walk you through a typical install
-of DB2 Version 7.1 on Linux. The following section, Section 6,
-tells you how to create both a DB2 Administration Server
-and a DB2 instance. For in-depth information on the components offered
-by DB2 Version 7.1, consult the following documents:
-
-
-
-
-
-*
-
-''DB2 for UNIX Quick Beginnings''
-
-
-
-*
-*
-
-''DB2 Personal Edition for Linux Quick Beginnings''
-
-
-
-*
-*
-
-''DB2 Connect Personal Edition for Linux Quick Beginnings''
-
-
-
-*
-
-
-
-
-For the purposes of this document, I'll assume that you have
-a copy of DB2 Version 7.1 on CD-ROM. If you download a copy from IBM,
-just adjust the path /mnt/cdrom
-in the following instructions to reflect the directory created by
-the __tar__ command.
-
-
-
-
-__Tip: __
-Some distributions disable execute privileges on CD-ROM devices by default.
-To mount a CD-ROM with execute permissions at mount point
-/mnt/cdrom, issue the following command
-as root:
-
-bash# mount -o exec /mnt/cdrom
-
-
-
-----
-!!4.1. Using the __db2setup__ utility
-
-You'll find the following executables on the root directory
-of the DB2 Version 7.1 installation CD-ROM:
-
-
-
-
-
-*
-
-__db2setup__:
-Use the __db2setup__ command to install DB2 Version 7.1, to create or modify
-DB2 instances, and to create a DB2 Administration Server. Once you install DB2,
-__db2setup__ is copied to the
-/usr/IBMdb2/V7.1/install directory
-to enable you to create or modify instances without the CD-ROM.
-
-
-
-*
-*
-
-__db2_install__:
-The __db2_install__ command provides an alternate
-means of installing DB2 RPMs. Unlike __db2setup__,
-it does not enable you to create a DB2 instance or Administration Server,
-or install a license key. I highly recommend __db2setup__.
-
-
-
-*
-*
-
-__db2_deinstall__:
-Use the __db2_deinstall__ command to uninstall
-the DB2 Version 7.1 packages on your system. For more information, see
-Section 7.
-
-
-
-*
-
-
-
-
-__Note: __
-The __db2setup__ command provides a terminal-based
-text menu for your installation and instance creation options.
-Unfortunately, __db2setup__ on Linux sometimes
-encounters a few formatting bugs in terminal emulators.
-Running __db2setup__ from the
-TTY console works well. Within an X session, the
-__rxvt__ or __xterm__ terminals
-work quite well, but __gnome-terminal__
-is rather frustrating to use.
-If the text menu formats incorrectly, press CTRL-L
-to refresh the menu.
-
-
-----
-!!4.2. Installing DB2 components
-
-The following instructions assume that you are using __db2setup__ to
-install DB2.
-
-
-
-
-To select or deselect a component, highlight the component using
-the cursor keys and press __ENTER__.
-
-
-
-
-To change the options for a component, highlight [[ Customize... ]
-and press __ENTER__.
-
-
-
-
-To install your selected components, highlight [[ OK ]
-on the Install DB2 V7 menu and press __ENTER__.
-
-
-
-
-The common DB2 files are installed in the
-/usr/IBMdb2/V7.1/ directory. When you
-create an instance, a directory called sqllib
-is created in the corresponding user's home directory. The
-sqllib directory contains symbolic links
-to the executables and other files in /usr/IBMdb2/V7.1/.
-
-
-
-
-The following list describes some of the common DB2 components that you can
-install, including estimates of the size required for each component.
-
-
-
-
-
-
-
-
-__Description of DB2 components__
-
-; Administration Client:
-
-The Administration Client enables database administrators to administer local or remote
-DB2 servers from the command line. This component, without Java support or the
-Control Center, requires about 20 MB of disk space.
-
-
-; Control Center:
-
-The Control Center (__db2cc__) is an optional part of many
-DB2 components. It gives database administrators a graphical interface for
-administering local or remote DB2 servers.
-The Control Center includes the DB2 Information Center (__db2ic__),
-which gives you a graphical interface that provides a tree view of the DB2 documentation
-installed on your workstation organized by task or by title.
-
-
-
-
-Note that both the Control Center and Information Center are Java applications, so
-their performance depends on your system's processor speed and available memory.
-This component requires about 90 MB of disk space.
-
-
-
-
-__Tip: __
-You probably want to install the Control Center.
-
-
-; DB2 UDB Enterprise Edition, DB2 UDB Workgroup Edition, DB2 Personal Edition:
-
-These components determine the state of your DB2 installation as a database server.
-The core capabilities of the components are the same. The difference between
-Enterprise Edition and Workgroup Edition primarily has to do with how they are
-licensed--Enterprise Edition is licensed on a per-processor basis
-with unlimited users, while Workgroup Edition is licensed on a per-user basis.
-Enterprise Edition also gives you the capability to enable DB2 clients to connect
-to mainframe databases, like DB2 for OS/390 or DB2 for OS/400. In contrast,
-Personal Edition is a single user database server that is useful only for developing
-DB2 applications. You cannot use Personal Edition as a server because Personal Edition
-does not accept incoming remote connections.
-
-
-
-
-Adding one of these components requires about 40 MB of disk space.
-
-
-
-
-
-
-
-
-__Options for DB2 servers__
-
-; Replication:
-
-This option enables your DB2 server to replicate data to other
-DB2 servers, and, with additional software, across non-DB2 servers as well.
-This option requires about 5 MB of disk space.
-
-
-; Distributed Join for DB2 Data Sources:
-
-This option enables your DB2 server to participate in a join with
-data from other database servers.
-This option requires about 2 MB of disk space.
-
-
-; Application Development Client:
-
-The Application Development Client component installs the headers and libraries
-that you need to create applications using embedded SQL for C and C++,
-Call Level Interface (CLI),
-Java Database Connectivity (JDBC),
-or embedded SQL for Java (SQLJ).
-You also have the option of installing the source code for sample applications
-that demonstrate much of the functionality of DB2.
-
-
-
-
-__Tip: __
-If you plan on developing applications for DB2, install the sample applications.
-The sample directories in /usr/IBMdb2/V7.1/samples/
-contain build scripts (bld***) that include the compile and link
-options suitable for your own applications.
-
-
-
-
-__Tip: __
-If you are trying to develop applications and you get an error like
-"That command is not supported in this environment" while trying to precompile a file,
-it's because you either did not install the Application Development Client, or
-you installed it after you created an instance and you have not used the
-__db2iupdt__ command to update the instance. See Section 9.1
-for more information on __db2iupdt__.
-
-
-
-
-Including the sample applications, this component requires about 10 MB of disk space.
-
-
-; DB2 Product Library (HTML documentation):
-
-Documentation is installed into the
-/usr/IBMdb2/V7.1/doc/ directory. For each language
-that you install, the DB2 installer creates a subdirectory with a five-character
-name corresponding to the language locale.
-Issue the __db2help__ command to fire up your Web browser with
-a page that links to the documentation installed with DB2.
-
-
-
-
-The English HTML (En_US) documentation requires about 90 MB of disk space.
-
-
-----
-!!!5. Installing DB2 on other Linux distributions
-
-DB2 Version 7.1 is distributed as a set of RPM packages. If you want to install DB2
-on a distribution that is not officially supported by IBM, and that
-distribution satisfies all of the prerequisites specified in Section 2,
-all that you theoretically need to do is find a way to install those packages on your distribution.
-The __alien__ utility available from
-Kite converts RPM packages
-into formats supported by Debian (dpkg), Stampede
-(slp), and Slackware (slp).
-
-
-
-
-
-
-; Debian:
-
-Susan Williams reported success in installing DB2 Version 7.1 on Debian using
-the following script as root:
-
-
-__Example 1. Installation script for DB2 Version 7.1 on Debian__
-
-
-#!/bin/bash
-cd /
-for f in /mnt/cdrom1/db2/*rpm
-do
-alien -d -i -c $f
-done
-
-
-
-
-
-This script installs every DB2 package on the CD-ROM. In a future iteration of
-this document I plan to provide a description of all of the DB2 packages to help
-you develop a more selective approach for your installation.
-
-
-
-
-Christoph Shmitz reports that, while he was able to install
-DB2 Version 7.1 Personal Developer's Edition on Debian 2.2
-using __alien__ as described above, DB2 starts in a
-time-limited trial mode (90 days). While the use of
-DB2 Version 7.1 Personal Developer's Edition should be unlimited,
-__alien__ does not automatically install the DB2 license file.
-
-
-
-
-To remove the time limit on DB2 Version 7.1 Personal Developer's Edition,
-you need to manually install the license file
-(s000510.personal/db2/license/db2udbpe.lic in the tar archive)
-using the following command as root:
-
-bash# db2licm -a db2udbpe.lic
-
-
-
-
-
-Using __alien__ apparently prevents you from using the __db2setup__ command
-to create instances. To create a DB2 Administration Server from the command line,
-issue the /usr/ibmdb2/v7.1/instance/dasicrt command as root.
-To create a DB2 instance, issue the /usr/ibmdb2/v7.1/instance/db2icrt
-command as root. To get the correct syntax for either command, use the -h flag.
-
-
-
-
-For further information on installing DB2 on Linux distributions which use the __dpkg__
-package manager, see Tiago Antao's page,
-Agnostic DB2 V7.1 for GNU/Linux.
-
-
-
-
-In the following section, Andika Triwidada describes how to install
-DB2 on Debian 2.2 using the __rpm__ command.
-You can check the prerequisite package levels (described in Section 2)
-installed on your system with the following command:
-
-bash$ dpkg -l|egrep -e '(libc6|libstdc++|pdksh|rpm|zip)'|awk '{print $1,$2,$3}'
-
-The resulting list should contain:
-
- ii libc6 2.1.3-13
-ii libstdc++2.9-glibc2.1 2.91.66-4
-ii pdksh 5.2.14-1
-ii rpm 3..3-1
-ii unzip 5.40-1
-
-
-
-
-
-If you are missing any of these packages, you can install the package using __apt-get__:
-
-bash# apt-get install ''package-name''
-
-
-
-
-
-__Installation Steps__
-
-
-#
-
-Initialize the RPM database.
-
-bash# rpm --initdb
-
-
-
-
-#
-#
-
-Modifiy several files in /bin
-
-bash# mv /bin/sh /bin/sh.bash
-bash# ln -s /usr/bin/ksh /bin/sh
-bash# for f in awk basename ksh passwd sort touch; do ln -s /usr/bin/$f /bin/$f; done
-
-
-
-
-#
-#
-
-Copy the contents of the following script to create an RPM wrapper
-called /bin/rpm.
-
-#!/bin/sh
-# RPM wrapper, force RPM installation without checking any dependencies
-if [[ "$1" = "-ivh" ]
-then
-shift
-/usr/bin/rpm -ivh --nodeps $*
-else
-/usr/bin/rpm $*
-fi
-
-
-
-
-#
-#
-
-Make the RPM wrapper executable:
-
-bash# chmod +x /bin/rpm
-
-
-
-
-#
-#
-
-Install DB2 using the __db2setup__ command by following
-the instructions in Section 4.
-
-
-
-#
-#
-
-Create the DB2 administration server and at least one DB2 instance
-as described in Section 6. To simplify testing,
-ensure that you create the sample database when you create the DB2 instance.
-
-
-
-#
-
-__Testing your DB2 installation__
-
-
-#
-
-Log on to your Linux server with the DB2 instance user ID. Remember,
-the default user ID is db2inst1.
-
-
-
-#
-#
-
-Prepare your DB2 environment by running the __db2profile__
-script:
-
-bash$ cd ~/sqllib
-bash$ . ./db2profile
-
-
-
-
-#
-#
-
-Run a query against the sample database to test your installation.
-
-bash$ db2
-bash$ db2 =b connect to sample
-bash$ db2 =b select * from employee
-
-There should be a printout of records from sample database here
-
-bash$ db2 =b quit
-
-
-
-
-#
-
-__After you install DB2__
-
-
-#
-
-Remove the RPM wrapper script by removing, renaming, or linking it directly to /usr/bin/rpm.
-
-bash# rm /bin/rpm
-
-
-
-
-#
-#
-
-Change /bin/sh back into a symlink to /usr/bin/bash.
-
-bash# ln -sf /usr/bin/bash /bin/sh
-
-
-
-
-#
-
-After installing DB2 with __alien__, Claus Reiner reported that:
-
-
- While all components of DB/2 were installed, the instance
-apparently didn't know them and thus couldn't use them.
-After a lot of sweat going through the configurations,
-IBM support told me that I should make an instance update
-which solved it. (The instance could locally and between
-Unixen do everything, only when trying to connect to AS/400
-using DCS it told us 'authentication not supported').
-
-
-
-Claus recommends running the following commands as root after
-installing DB2 with either __alien__ or __RPM__,
-
-bash# . $INSTANCEHOME/sqllib/db2profile
-bash# /usr/IBMdb2/V7.1/instance/db2iupdt -e
-
-
-
-; Slackware:
-
-Thorough information on installing DB2 on Slackware 7.1 using __RPM__ is available
-from James Phillips' page, Installing DB2 on Slackware Linux.
-
-
-----
-!!!6. Creating DB2 instances
-
-This section gives you a brief overview of DB2 instances
-and the DB2 Administration Server, and tells you how to create them.
-
-
-
-
-Some IBM documentation uses the term "instance" to refer to both
-DB2 instances and a DB2 Administration Server. The basic similarity
-between a DB2 Administration Server and a DB2 instance,
-or "database manager", is that each is associated with a
-unique user ID. When you create either a DB2 instance or a
-DB2 Administration Server, DB2:
-
-
-
-
-
-*
-
-creates one or more new user IDs and corresponding home directories
-
-
-
-*
-*
-
-creates a subdirectory in the instance home directory called
-sqllib
-
-
-
-*
-*
-
-alters the .bashrc file to call the
-~/sqllib/db2profile shell
-script to set up the environment for the instance
-
-
-
-*
-
-
-----
-!!6.1. Overview of DB2 Administration Server
-
-Like a queen bee in a hive, only one DB2 Administration Server can
-exist on any given DB2 server. By locally or remotely logging as the user ID that
-corresponds to the DB2 Administration Server, a database administrator
-uses the DB2 Administration Server to create, drop, or change the properties
-of DB2 instances.
-
-
-----
-!!6.2. Overview of DB2 instance
-
-To quote the IBM DB2 Universal Database Version 7.1 Administration Guide definition of an instance:
-
-
-An instance (sometimes called a database manager) is DB2 code that manages data.
-It controls what can be done to the data, and manages system resources assigned to it.
-Each instance is a complete environment. ... An instance has its own databases (which
-other instances cannot access), and all its database partitions share the same system
-directories. It also has separate security from other instances on the same machine (system).
-
-
-
-What this boils down to is that for every DB2 instance, DB2 requires a unique user ID
-on your Linux workstation. Security for an instance is provided by the normal
-password authentication process for any Linux user ID. Each instance can contain
-one or more databases, each of which inherits settings from their instance.
-
-
-
-
-__Creating the Administration Server using __db2setup____
-
-
-
-The DB2 Administration Server requires about 3 MB of disk space.
-The following steps guide you through the process of creating a
-DB2 Administration Server.
-
-
-
-#
-
-Issue the __db2setup__ command as described in Section 4.2.
-
-
-
-#
-#
-
-Select [[ Create... ].
-
-
-
-#
-#
-
-Select the check box for Create the Administration Server. The Administration Server
-window is displayed.
-
-
-
-#
-#
-
-Enter a unique user name in the User Name field. You can use an existing user
-name that is not already in use by a DB2 instance, but it is probably simpler to
-create a new user for each instance.
-
-
-
-#
-#
-
-Select the Use default UID check box. As far as I can tell, this setting is always right.
-
-
-
-#
-#
-
-Enter a unique group name in the Group Name field. You can use an existing group name if
-you wish, but creating a new group ensures that you do not inadvertently give permissions
-to other users on your system.
-
-
-
-#
-#
-
-Select the Use default GID check box. Again, as far as I can tell,
-this setting is always right.
-
-
-
-#
-#
-
-Ensure that the value of the Home Directory field reflects the home directory of
-the user ID.
-
-
-
-
-
-__Warning__
-
-SuSE users: The prefix for the home directory may default to
-/usr/lib/db2/. This is almost
-certainly wrong; the value for a standard SuSE system should be
-/home/.
-
-
-
-
-
-
-#
-#
-
-Enter a unique password in the Password and Verify Password fields.
-
-
-
-
-
-__Warning__
-
-''Enter a new password!'' If you do not enter a new password in these fields,
-DB2 assigns the default password ibmdb2, giving crackers a wide-open
-front door to your system.
-
-
-
-
-
-
-#
-
-__Creating a DB2 instance using __db2setup____
-
-
-
-A DB2 instance requires about 2 MB of disk space. A sample database for a DB2 instance
-requires about 16 MB of disk space.
-The following steps guide you through the process of creating a DB2 instance.
-
-
-
-#
-
-Issue the __db2setup__ command as described in Section 4.2.
-
-
-
-#
-#
-
-Select [[ Create... ].
-
-
-
-#
-#
-
-Select the Create a DB2 Instance check box. The DB2 Instance window is displayed.
-
-
-
-#
-#
-
-Enter a unique user name in the User Name field. You can use an existing user
-name that is not already in use by a DB2 instance, but it is probably simpler to
-create a new user for each instance.
-
-
-
-#
-#
-
-Select the Use default UID check box. As far as I can tell, this setting is always right.
-
-
-
-#
-#
-
-Enter a unique group name in the Group Name field. You can use an existing group name if
-you wish, but creating a new group ensures that you do not inadvertently give permissions
-to other users on your system.
-
-
-
-#
-#
-
-Select the Use default GID check box. Again, as far as I can tell,
-this setting is always right.
-
-
-
-#
-#
-
-Ensure that the value of the Home Directory field reflects the home directory of
-the user ID.
-
-
-
-
-
-__Warning__
-
-SuSE users: The prefix for the home directory may default to
-/usr/lib/db2/. This is almost
-certainly wrong; the value for a standard SuSE system should be
-/home/.
-
-
-
-
-
-
-#
-#
-
-Enter a unique password in the Password and Verify Password fields.
-
-
-
-
-
-__Warning__
-
-''Enter a new password!'' If you do not enter a new password in these fields,
-DB2 assigns the default password ibmdb2, giving crackers a wide-open
-front door to your system.
-
-
-
-
-
-
-#
-#
-
-Select [[ Properties... ] to change the properties for the instance.
-
-
-
-##
-
-Under the Authentication Type heading, select the Server Encrypt check box.
-This greatly improves the security of your system, by telling DB2 to accept
-encrypted passwords, rather than plain text passwords.
-
-
-
-##
-##
-
-Select the Auto start DB2 Instance at system boot check box if you want to start
-this DB2 instance every time you reboot your system.
-
-
-
-##
-##
-
-Select the Create a sample database for DB2 Instance check box if you plan
-to work with the sample applications available with the Application Development Client.
-To run correctly, most of the sample applications require the specific tables and data
-of the sample database. If you do not create the sample database now, you can create it
-later using the __db2sampl__ command.
-
-
-
-##
-#
-#
-
-Select [[ OK ] to create the DB2 instance. The Fenced User text
-window is displayed. Repeat the previous steps for creating a new user and group.
-Server-side DB2 executables, such as stored procedures and user-defined functions,
-execute under the permissions of the fenced user ID.
-By controlling the permissions of the fenced user ID, you control the
-permissions of the server-side DB2 executables.
-
-
-
-#
-#
-
-Select [[ OK
] to create the fenced user.
-
-
-
-#----
-!!!7. Removing DB2
-
-To remove DB2 from your workstation cleanly, perform
-the following steps:
-
-
-
-#
-
-Log in as root.
-
-
-
-#
-#
-
-List all DB2 instances:
-bash# /usr/IBMdb2/V7.1/instance/db2ilist
-
-
-
-#
-#
-
-Drop each instance listed in the previous step with the following command:
-
-bash# /usr/ibmdb2/v7.1/instance/db2idrop ''instance-name''
-
-
-
-#
-#
-
-Drop the DB2 administration server:
-
-bash# /usr/IBMdb2/V7.1/instance/dasidrop `/usr/IBMdb2/V7.1/instance/dasilist`
-
-
-
-#
-#
-
-Uninstall all of the DB2 packages on your system using the __db2deinstall__
-command on your DB2 CD-ROM:
-
-bash# /mnt/cdrom/db2/db2_deinstall -n
-
-
-
-#----
-!!!8. Using DB2
-
-This section gives you the basic information you need to start working
-with DB2 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.
-
-
-
-
-__Note: __
-This section assumes that you have followed the instructions in
-Section 11.
-
-
-----
-!!8.1. DB2 Control Center
-
-The left side of the DB2 Control Center provides an
-object-oriented view of the database objects that you
-have catalogued, including DB2 instances and databases
-on other DB2 servers. One way to add, edit, or drop database
-objects is to right-click on an object to bring up a
-menu.
-
-
-
-
-__To start the DB2 Control Center__
-
-
-#
-
-Ensure you are logged on to your Linux workstation using either the
-DB2 Administration Server user ID or the DB2 instance user ID. If you
-use the __su__ command to become the user, ensure you
-include the -l parameter to initialize the
-environment for the user.
-
-
-
-#
-#
-
-Start the X server, if it is not already started.
-
-
-
-#
-#
-
-Issue the __db2cc__ command to start the DB2 Control Center.
-Depending on the speed of your system, it may take a few seconds
-for the splash screen to appear, and longer before the
-full DB2 Control Center appears.
-
-
-
-#----
-!!8.2. DB2 Information Center
-
-The DB2 Information Center provides tree views of the
-information about DB2 that is installed on your system,
-as well as a number of links to web sites with further
-information. If you did not install the DB2 documentation,
-the tree views contain fewer links.
-
-
-
-
-__To start the DB2 Information Center__
-
-
-#
-
-Ensure you are logged on to your Linux workstation using either the
-DB2 Administration Server user ID or the DB2 instance user ID. If you
-use the __su__ command to become the user, ensure you
-include the -l parameter to initialize the
-environment for the user.
-
-
-
-#
-#
-
-Ensure that the X server is started.
-
-
-
-#
-#
-
-Issue the __db2ic__ command to start the DB2 Information Center.
-Depending on the speed of your system, it may take a few seconds
-for the splash screen to appear, and longer before the
-full DB2 Information Center appears.
-
-
-
-#----
-!!8.3. The DB2 command line
-
-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.
-
-
-
-
-If this is your first time using DB2, I would suggest creating the
-sample database that ships with DB2. The sample database is used
-throughout the DB2 documentation and is required by most of the
-sample applications.
-To create the sample database, you can either select the
-Create the sample database option when you
-create a DB2 instance, or issue the __db2sampl__
-command from the DB2 command line.
-
-
-
-
-Before you can issue an SQL statement, you have to connect to a
-database. To connect to a database:
-
-
-
-
-
-*
-
-__db2 CONNECT TO ''database'' USER ''userID'' USING ''password''__
-
-
-
-*
-
-
-
-
-To connect to a database, and have DB2 prompt you for the password:
-
-
-
-
-
-*
-
-__db2 CONNECT TO ''database'' USER ''userID''__
-
-
-
-*
-
-
-
-
-To connect to a database using the default user ID:
-
-
-
-
-
-*
-
-__db2 CONNECT TO ''database''__
-
-
-
-*
-
-
-
-
-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 columns from the EMPLOYEE
-table in the SAMPLE database,
-issue the following command:
-bash$ db2 "SELECT * FROM employee"
-
-
-
-
-__Note: __
-You can avoid typing __db2__ as the prefix for every
-SQL statement and DB2 command by issuing commands using the
-Command Line Processor (CLP). To start the CLP,
-issue the __db2__ command by itself. DB2 provides the following prompt:
-
-
-You can issue database manager commands and SQL statements from the command
-prompt. For example:
-db2 =b connect to sample
-db2 =b 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 =b
-
-I don't use the CLP because it prevents me from using the
-command line history feature of my shell. I find myself using
-the command line history a lot when I'm issuing SQL statements.
-
-
-
-
-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.
-
-
-----
-!!!9. Troubleshooting
-
-The following section covers some of the common problems you may encounter
-while installing DB2, creating an instance, or using a DB2 database.
-
-
-----
-!!9.1. Problems with DB2 installation
-
-The following section covers some of the common problems you may encounter
-when you install DB2.
-
-
-; 9.1.1. When I try to run __db2setup__, I get the following error:
-DBI1503E An error was encountered when opening
-or writing to file, "/tmp/.dbinst.swp".
-; 9.1.2. When I try to run __db2setup__, I get the following error:
-./db2inst: error while loading shared libraries: libncurses.so.4: cannot
-open shared object file: No such file or directory
-; 9.1.3. Creating a DB2 instance on SuSE Linux: Default user name already exists
-; 9.1.4. Creating a DB2 instance on SuSE Linux: Default group name already exists
-; 9.1.5. Creating a DB2 instance on SuSE Linux: Default home directory points to /usr/lib/db2/
-; 9.1.6. After creating a DB2 instance, I installed the Application Development Client,
-but I can't use that instance to create DB2 applications.
-; 9.1.7. I installed DB2, but none of the permissions in
-/usr/IBMdb2/V7.1/bin
-are executable!
-
-
-__9.1.1. __
-When I try to run __db2setup__, I get the following error:
-DBI1503E An error was encountered when opening
-or writing to file, "/tmp/.dbinst.swp".
-
-
-
-
-__ __
-DB2 issues this error when it can't find the __pdksh__ or __ksh__
-shells. This has probably occurred because you did not install the pdksh
-package for your distribution. See Section 3 for more details on installing
-the __pdksh__ package for your Linux distribution.
-
-
-
-
-__9.1.2. __
-When I try to run __db2setup__, I get the following error:
-./db2inst: error while loading shared libraries: libncurses.so.4: cannot
-open shared object file: No such file or directory
-
-
-
-
-__ __
-DB2 issues this error when it can't find the libncurses.so.4 library. Red Hat 7
-does not include this level of the library in their standard ncurses-5.1-2 package,
-requiring that you install the ncurses4-5.-2 library for backwards compatibility.
-
-
-
-
-__9.1.3. __
-Creating a DB2 instance on SuSE Linux: Default user name already exists
-
-
-
-
-__ __
-If you did not remove the default DB2 user IDs created by SuSE Linux before
-installing DB2 (see Section 3.5), the DB2 Create Instance
-panel places the corresponding user ID in the "User ID" field. This
-can cause a problem when you change the value of the User Name field
-to reflect the name of the new instance, because the value of the "User ID"
-still reflects the original user name.
-
-
-
-
-Ensure that you select the "Use default UID" check box to automatically
-associate the new user name with its corresponding user ID.
-
-
-
-
-__9.1.4. __
-Creating a DB2 instance on SuSE Linux: Default group name already exists
-
-
-
-
-__ __
-If you did not remove the default DB2 user IDs created by SuSE Linux before
-installing DB2 (see Section 3.5), the DB2 Create Instance
-panel places the corresponding group ID in the Group ID field. This
-can cause a problem when you change the value of the Group Name field
-to reflect the name of the new instance, because the value of the Group ID
-still reflects the original group name.
-
-
-
-
-Ensure that you select the "Use default GID" check box to automatically
-associate the new group name with its corresponding group ID.
-
-
-
-
-__9.1.5. __
-Creating a DB2 instance on SuSE Linux: Default home directory points to /usr/lib/db2/
-
-
-
-
-__ __
-If you did not remove the default DB2 user IDs created by SuSE Linux before
-installing DB2 (see Section 3.5), the default user name already exists and was created in the
-/usr/lib/db2/ directory. To change the
-home directory of your new DB2 instance, you must manually specify
-the location of the new instance. The default home
-directory is /home/.
-
-
-
-
-__9.1.6. __
-After creating a DB2 instance, I installed the Application Development Client,
-but I can't use that instance to create DB2 applications.
-
-
-
-
-__ __
-When you add the Application Development Client after you initially install
-DB2 and create a DB2 instance, your existing DB2 instance won't recognize the
-__db2 prep__ command. Instead, DB2 returns the following error:
-DB21051E The command is not supported for this environment.
-
-
-
-
-The problem is that when you install a new DB2 component, DB2 does not automatically update
-existing DB2 instances to include links to the new libraries and executables.
-To update an existing DB2 instance, use the __db2iupdt__ command as root:
-
-bash# /usr/IBMdb2/V7.1/instance/db2iupdt ''instance-name''
-To update all existing DB2 instances, issue the following command as root:
-
-bash# /usr/IBMdb2/V7.1/instance/db2iupdt -e
-
-
-
-
-__9.1.7. __
-I installed DB2, but none of the permissions in
-/usr/IBMdb2/V7.1/bin
-are executable!
-
-
-
-
-__ __
-When you create an instance, as described in
-Section 6, DB2 copies selected files from
-/usr/IBMdb2/V7.1/bin into the
-$HOME/sqllib/bin directory of
-the instance. DB2 sets the appropriate permissions on the copies of
-the files in the instance directory.
-
-
-----
-!!9.2. Problems creating a DB2 instance
-
-The following section covers some of the common problems you may encounter
-when you create a DB2 instance.
-
-
-; 9.2.1. Creating a DB2 instance or a DB2 Administration Server fails.
-; 9.2.2. __db2setup__ indicated that it successfully
-created an instance, but I checked /tmp/db2install.log
-and it contains the message
-DBI1766W Cannot change the secondary group list of ""
-(Caldera !OpenLinux 2.4).
-
-
-__9.2.1. __
-Creating a DB2 instance or a DB2 Administration Server fails.
-
-
-
-
-__ __
-DB2 often fails to create an instance because you became root by issuing the command
-__bash$ su root__ rather than __bash$ su -l root__, which
-uses the environment settings for the root account. Check the contents of the DB2 install log
-in /tmp/db2setup.log. If the installer has issued the following error message:
-
- DBI1517E An attempt to execute a command in a subprocess failed.
-Explanation: An error was detected when attempting to execute a command in a subprocess. One of the
-following problems occurred:
-o The command does not exist.
-o Incomplete command search path.
-o Incorrect access permissions on the command.
-o System resource problem.
-
-then most likely your root account did not have the
-/usr/sbin directory in the PATH
-environment variable for root.
-
-
-
-
-PATH is normally set correctly for you if you log in as
-root, or issue the command __bash$ su -l root__ to become root. You can
-add /usr/sbin to the
-PATH environment variable by issuing the following command at the terminal
-prompt, or including it in /root/.bashrc:
-
- export PATH=$PATH:/usr/sbin
-
-
-
-
-
-__9.2.2. __
-__db2setup__ indicated that it successfully
-created an instance, but I checked /tmp/db2install.log
-and it contains the message
-DBI1766W Cannot change the secondary group list of ""
-(Caldera !OpenLinux 2.4).
-
-
-
-
-__ __
-This is one area where DB2 and Caldera !OpenLinux don't work well together.
-Fix this by manually adding each instance user ID to the group
-you defined during instance creation. Here's the full help from
-the IBM DB2 Message Reference:
-
- DBI1766W Cannot change the secondary group list of
-"".
-Explanation: A code, "", is returned when attempting to
-change the secondary group list of the given user ID. One of the
-following situations has occurred:
-o NIS is running.
-o One or more processes are currently being executed under the
-given user ID.
-User Response: You must add the group ID, "", to the
-secondary group list of the user ID, "", so that the
-Adminstration Server can function properly.
-o If there happens to be any process run under the given user
-ID, terminate all of these processes and follow the
-instructions above to setup the secondary group list of this
-user ID.
-o If you are running this command on an NIS client, try the
-above instructions to setup the secondary group list of this
-user ID on your NIS server.
-
-For instructions on how to add user IDs to groups, see Section 3.1.3.1.
-
-
-----
-!!9.3. Problems using DB2
-
-The following section covers some of the common problems you may encounter
-when you use a DB2 database.
-
-
-; 9.3.1. DB2 is running out of available connections.; 9.3.2. I installed DB2 Version 6.1 and __db2start__ just hangs.; 9.3.3. I'm using DB2 PE 7.1 on linux (RH 6.), and I'm having problems when
-trying to connect with my username and password. I can connect successfully
-to the database with the default user ID:
-
-bash$ db2 connect to sample
-Database Connection Information
-Database server = DB2/LINUX 7.1.
-SQL authorization ID = ''userID''
-Local database alias = SAMPLE
-
-But when I try to connect to the database using the explicit user ID, it fails:
-
-bash$ db2 CONNECT TO sample USER ''userID''
-Enter current password for ''userID'':
-SQL1403N The username and/or password supplied is incorrect.
-SQLSTATE=08004
-
-Why can't I connect with an explicit user ID?
-; 9.3.4. When I run any __db2__ commands, part of the output is
-Welcome to your !OpenLinux system!. How
-do I change this? (Caldera !OpenLinux 2.4)
-; 9.3.5. How do I connect from a DB2 Connect for Linux client to a DB2 for AS/400 server?
-
-
-__9.3.1. __DB2 is running out of available connections.
-
-
-
-__ __
-You probably need to adjust some kernel parameters. For more information, see
-Section 10.
-
-
-
-
-__9.3.2. __I installed DB2 Version 6.1 and __db2start__ just hangs.
-
-
-
-__ __
-Hey! I said I wasn't going to include any DB2 Version 6.1 information! Oh well, this is
-one of the most frequently asked questions about 6.1, so
here's a short answer: you need to install
-a recent DB2 !FixPack. The initial release of DB2 Version 6.1 ran into incompatibilities
-with distributions built on glibc 2.1. For a full description of the
-problem, and the correct install procedure, refer to IBM Support document 1000814:
-db2start hangs on Linux distributions built with glibc 2.1.
-
-
-
-
-__9.3.3. __
-I'm using DB2 PE 7.1 on linux (RH 6.), and I'm having problems when
-trying to connect with my username and password. I can connect successfully
-to the database with the default user ID:
-
-bash$ db2 connect to sample
-Database Connection Information
-Database server = DB2/LINUX 7.1.
-SQL authorization ID = ''userID''
-Local database alias = SAMPLE
-
-But when I try to connect to the database using the explicit user ID, it fails:
-
-bash$ db2 CONNECT TO sample USER ''userID''
-Enter current password for ''userID'':
-SQL1403N The username and/or password supplied is incorrect.
-SQLSTATE=08004
-
-Why can't I connect with an explicit user ID?
-
-
-
-
-__ __
-Check the ownership and permissions on the db2ckpw program.
-They should look like this:
-
-bash$ ls -al ~/sqllib/security/db2ckpw
--rwsr-s--x 1 root build 15989 Oct 17 07:22 sqllib/security/db2ckpw*
-
-If this program is not owned by root, then do the following as root:
-
-bash# chown root db2ckpw
-bash# chmod ug+s db2ckpw
-
-
-
-
-
-__9.3.4. __
-When I run any __db2__ commands, part of the output is
-Welcome to your !OpenLinux system!. How
-do I change this? (Caldera !OpenLinux 2.4)
-
-
-
-
-__ __
-Caldera !OpenLinux includes this annoying message as part of their default
-login. For instructions on how to remove or modify this output, see
-Section 3.1.3.3.
-
-
-
-
-__9.3.5. __
-How do I connect from a DB2 Connect for Linux client to a DB2 for AS/400 server?
-
-
-
-
-__ __
-Claus Reiner contributed the following procedure:
-
-
-
-
-__Preparing DB2 for AS/400 to accept connections__
-
-
-
- AS/400 has a special service that must be run and other things
-that need to be prepared:
-
-
-
-#
-
- Name the database and make a *LOCAL entry Command WRKRDBDIRE.
-There should be an entry with a remote location name of *LOCAL.
-The relational database name specified with that entry is the
-external name of the AS/400 database. Typically this is the same name as the
-system name.
-
-
-
-#
-#
-
- Set the code page to 37. For the user that connects, change the CCSID parameter
-from *SYSVAL to 37, or change it system-wide:
-
- CHGUSRPRF USRPRF(''user'') CCSID(37)
-
-or
-
- CHGSYSVAL SYSVAL(QCCSID) VALUE(37)
-
-
-
-
-#
-#
-
- Start a service to listen on port 446. To start the service once:
-
- STRTCPSVR SERVER(*DDM)
-
-To automatically start the service:
-
- CHGDDMTCPA AUTOSTART(*YES)
-
-
-
-
-#
-#
-
- Create a NULLID collection by issuing the following SQL statement:
-
- CREATE COLLECTION NULLID
-
-
-
-
-#
-#
-
- Possibly create a collection for the user ID to connect with:
-
- CREATE COLLECTION ''userid''
-
-
-
-
-#
-
-__Preparing DB2 Connect for Linux to connect to an AS/400 database__
-
-
-
- On the Linux side, you need to perform the following steps:
-
-
-
-#
-
- Catalog the remote node (the AS/400) with OSTYPE OS400:
-
-bash$ db2 CATALOG TCPIP NODE ''as400'' REMOTE ''as400'' \
-SERVER ''446'' REMOTE_DATABASE ''as400_dbname'' \
-OSTYPE os400
-
-
-
-
-#
-#
-
- Catalog the remote database in DCS:
-
-bash$ db2 CATALOG DCS DATABASE ''as400_dbname'' AS ''as400_dbname''
-
-
-
-
-#
-#
-
- Catalog the remote database:
-
-bash$ db2 CATALOG DATABASE ''as400_dbname'' AS ''as400_dbname'' \
-AT NODE ''as400'' AUTHENTICATION DCS
-
-
-
-
-#----
-!!9.4. Problems starting the DB2 Control Center
-
-The following section covers some of the common problems you may encounter
-trying to start the DB2 Control Center.
-
-
-; 9.4.1. When I start the DB2 Control Center with __db2cc__,
-nothing happens.
-; 9.4.2. When I start the DB2 Control Center, I get a message box with the
-error SQL1042C An unexpected system error occurred.
-; 9.4.3. I followed the instructions for installing IBM JDK 1.1.8 but Java
-applications, including the DB2 Control Center, don't work.
-; 9.4.4. The DB2 Control Center starts normally, but the "Systems" folder is empty.; 9.4.5. When I try to start the DB2 Control Center, I get the following message
-at the console: Xlib: connection to "localhost:." refused by server
-; 9.4.6. When I start the DB2 Control Center, I get a message box with the
-error SQL1042C An unexpected system error occurred.
-; 9.4.7. When I try to start the DB2 Control Center with
-the __db2cc__ command, the splash screen comes up, then
-disappears.
-
-
-__9.4.1. __When I start the DB2 Control Center with __db2cc__,
-nothing happens.
-
-
-
-
-__ __
-On some systems, for unknown reasons, issuing the __db2cc__
-command will not start the Control Center. You can often get the
-DB2 Control Center to start by explicitly starting a DB2 JDBC server
-on a specified port, then issuing the __db2cc__ command with
-the port number. The following example starts the DB2 JDBC server and
-DB2 Control Center on port 6799:
-
-bash$ db2jstrt 6799
-bash$ db2cc 6799
-
-
-
-
-
-__9.4.2. __When I start the DB2 Control Center, I get a message box with the
-error SQL1042C An unexpected system error occurred.
-
-
-
-
-__ __
-On most systems, this error occurs only the first time you start the Control Center. Note that
-the message box may be mostly covered up by the pretty DB2 splash screen;
-if this is the case, you have to move the error message window down
-and press the "Close" button. The Control Center then starts correctly, and you should
-not get the error message again.
-
-
-
-
-__9.4.3. __
-I followed the instructions for installing IBM JDK 1.1.8 but Java
-applications, including the DB2 Control Center, don't work.
-
-
-
-
-__ __
-Red Hat 7.1 enabled a floating point stack feature in the glibc library
-that breaks the IBM JDK 1.1.8. Other distributions might follow their lead.
-
-
-
-
-Set the LD_ASSUME_KERNEL environment variable to
-2.2.5 before running the DB2 Control Center or your
-Java application:
-
-bash$ export LD_ASSUME_KERNEL=2.2.5
-
-
-
-
-
-__9.4.4. __The DB2 Control Center starts normally, but the "Systems" folder is empty.
-
-
-
-__ __
-If the Control Center displays an empty "Systems" folder,
-you might need to catalog the DB2 Administration Server manually for the
-local instance from which you are trying to run the Control Center.
-This assumes that you have created the DB2 Administration Server instance
-before starting the Control Center.
-
-
-
-
-To catalog the DB2 Administration Server, issue the following command:
-
-bash$ db2 catalog admin local node ''machine-name'' instance ''Administration-Server-name'' system ''machine-name'' ostype linux
-Now restart the Control Center. Your local system is now displayed under the "Systems" folder.
-Do not try this from a client-only install of DB2,
-because no local DB2 Administration Server can be available.
-
-
-
-
-__9.4.5. __When I try to start the DB2 Control Center, I get the following message
-at the console: Xlib: connection to "localhost:." refused by server
-
-
-
-
-__ __
-This normally indicates an X permissions problem that occurs when you log on as one user, then
-__su__ to the DB2 instance owner so that you can start the DB2 Control Center.
-By default, most X servers do not recognize 'localhost' as a client that is allowed to initiate
-an X app on your display; it will only recognize your real hostname. If __xauth__
-is set up, then it will complain if a user ID other than the one that started X tries to invoke
-an X application.There are a few things you can try:
-
-
-
-
-
-*
-
-Before su'ing to the DB2 instance owner, issue the command __bash$ xhost +localhost__:
-this tells your X server that 'localhost' is allowed to start X apps on your display. Then __su__
-to the DB2 instance owner and start the Control Center.
-
-
-
-*
-*
-
-Log out completely, then log on directly as the DB2 instance owner and start the Control Center.
-You may still have to issue the command __bash$ xhost +localhost__ before the
-Control Center will start--recent distributions have added this extra level of security.
-
-
-
-*
-*
-
-Look into the __xauth__ command and add your primary user ID's
-~/.Xauthority file to your DB2 instance owner's xauth
-authority database. I believe it's the __xauth merge__ command that you want.
-
-
-
-*
-
-
-
-
-__9.4.6. __When I start the DB2 Control Center, I get a message box with the
-error SQL1042C An unexpected system error occurred.
-
-
-
-
-__ __
-On most systems, this error occurs only the first time you start the Control Center. Note that
-the message box may be mostly covered up by the pretty DB2 splash screen;
-if this is the case, you have to move the error message window down
-and press the "Close" button. The Control Center then starts correctly, and you should
-not get the error message again.
-
-
-
-
-__9.4.7. __When I try to start the DB2 Control Center with
-the __db2cc__ command, the splash screen comes up, then
-disappears.
-
-
-
-
-__ __
-On Caldera, the Control Center didn't work for me until I added the instance user IDs to
-the appropriate groups. For more information, see Section 3.1.3.1.
-
-
-
-
-__ __
-Ensure that you have installed the IBM Developer Kit for Java, and that
-the directory containing the jre or java
-executable is in your path. If you issue the command
-bash$ java -fullversion,
-you should get a response like this:
-java full version "JDK 1.1.8 IBM build l118-20000325 (JIT enabled: jitc)"
-
-or, for the IBM JDK 1.3:
-java full version "J2RE 1.3.0 IBM build cx130-20000623"
-
-Java virtual machines from other sources may not work.
-For a quick guide to installing the IBM Developer Kit for Java, see
-Section 11.
-
-
-----
-!!!10. Improving DB2 Version 7.1 performance on Linux
-
-Database administrators running DB2 on Linux often run into
-problems attempting to perform the following tasks:
-
-
-
-
-
-*
-
-increasing the maximum number of simultaneous connections to the DB2 server
-
-
-
-*
-*
-
-configuring buffer pools
-
-
-
-*
-The following sections attempt to address those problems.
-
-
-----
-!!10.1. Increasing maximum connections
-
-One of the most frequently reported problems with running DB2 on Linux is that
-DB2 seems to quickly start refusing connections to the server. You can alleviate
-this problem by examining an altering several kernel parameters that control
-inter-process communication (ipc) limits.
-
-
-
-
-The number of connections that DB2 can support depends on kernel parameters that,
-in the 2.2 kernel, are #define variables included in the
-kernel source header files. In the 2.4 kernel, some of these parameters can be set
-through the /proc filesystem.
-Following the description of these
-variables is a table listing the default values by distribution. The table includes the values
-of these variables in the updated kernel packages for each distribution.
-
-
-
-
-; _SHM_ID_BITS:
-
-This variable, defined in /usr/src/linux/include/asm/shmparam.h,
-determines the number of shared memory segment identifiers available to Linux. The
-default value for _SHM_ID_BITS in the kernel source
-is 7, which allows for a total of 2^7, or 128,
-shared memory segment identifiers.
-
-
-
-
-On a single-processor machine, DB2 itself uses a set number (~15) of
-shared memory segment identifiers. On a machine with multiple processors,
-DB2 also requires one shared memory segment identifier per agent to take
-advantage of the Fast Communication Manager (FCM) feature
-of DB2. Because each DB2 connection requires one agent per processor,
-on a quad-processor machine the default value of _SHM_ID_BITS
-allows less than 32 simultaneous connections to a DB2 instance.
-
-
-
-
-If you recompile the kernel yourself, you should be able to safely
-increase this value to 9.
-
-
-; MSGMNI:
-
-This variable determines the maximum number of message queue identifiers.
-For DB2 Version 7.1 to function correctly, the minimum value is 128,
-but for heavier use consider setting this value to 1024 or
-higher.
-
-
-
-
-In the 2.2 kernel source, this variable is defined in
-/usr/src/linux/include/linux/msg.h. The default value of
-128 is acceptable for small-scale use of DB2 Version 7.1.
-
-
-
-
-In the 2.4 kernel source, this variable is defined in
-/proc/sys/kernel/msgmni. The default value of
-16 must be increased to enable DB2 Version 7.1 to
-function correctly. The good news is that you can change this value
-without recompiling the kernel or rebooting your machine.
-For more information, see Section 12.
-
-
-; NR_TASKS:
-
-This variable, defined in /usr/src/linux/include/linux/tasks.h,
-determines the number of simultaneous processes that Linux
-supports. A second variable, MAX_TASKS_PER_USER, is defined
-as NR_TASKS/2. Since DB2 instances are treated as
-users by Linux, and each connection uses a single process, the maximum number
-of connections per instance is capped at the value of NR_TASKS/2.
-
-
-
-
-The default value for NR_TASKS in the kernel source is 512,
-allowing a maximum of 256 simultaneous connections to a single DB2 instance.
-DB2 itself requires a few connections for overhead processes.
-If you recompile the kernel yourself, you should increase this value to something like 2048.
-The stock kernels shipped with the Red Hat, SuSE, and !TurboLinux distributions
-increase the value of NR_TASKS to 2560 or above.
-However, Caldera !OpenLinux eDesktop 2.4 ships with a kernel in which NR_TASKS
-is set to the default value of 512. Caldera users should increase the value
-of this variable and recompile the kernel.
-
-
-; SEMMNI:
-
-This variable, defined in /usr/src/linux/include/linux/sem.h,
-determines the number of semaphore identifiers that Linux supports. This variable
-is particularly important on symmetric multi-processing (SMP)
-machines. A unique semaphor identifier is required for each processor per agent
-(or connection); therefore, on a quad-processor machine, four semaphore identifiers
-are required per connection.
-
-
-
-
-The default value for SEMMNI in the kernel source is 128,
-which, on a quad-processor machine, will only allow 32 simultaneous connections to a DB2 instance.
-If you recompile the kernel yourself, increase this value to something like 1024.
-
-
-
-
-
-
-
-The following table shows the default values of the kernel parameters
-set in the stock kernel source and in the kernels provided by each
-distribution.
-
-
-
-
-
-*
-
-unknown indicates that I don't
-know what the default level is, probably because it came
-to my attention after I had already removed the distribution
-(your feedback is welcome!)
-
-
-
-*
-*
-
-?? indicates that I could not find the
-parameter in the kernel source or in the
-/proc/sys/kernel/ directory. Help, anyone?
-
-
-
-*
-*
-
-** as a prefix indicates that the
-default value is not acceptable and must be increased
-
-
-
-*
-
-
-
-
-__Table 2. Default kernel parameter values, by distribution__
-
-
-Distribution_SHM_ID_BITSMSGMNINR_TASKSSEMMNI2.2 kernel source71285121282.4 kernel source??**16??128Caldera !OpenLinux eDesktop 2.47Unknown512128Caldera !OpenLinux eServer 2.37Unknown512128Linux-Mandrake 7.2105124090512Red Hat 6.2
-
-
-
-
-kernel-2.2.14-57kernel-2.2.14-129kernel-2.2.16-39
-
-
-
-Unknown
-
-
-
-
-kernel-2.2.14-52560kernel-2.2.14-122560kernel-2.2.16-34090
-
-
-
-
-
-
-
-
-kernel-2.2.14-5128kernel-2.2.14-12512kernel-2.2.16-3512
-
-
-
-Red Hat 7.1n/a (2.4 kernel)16n/a (2.4 kernel)128SuSE 6.2UnknownUnknownUnknownUnknownSuSE 6.3UnknownUnknownUnknownUnknownSuSE 7.091282048512TurboLinux 6.
-
-
-
-
-kernel-2.2.14-57kernel-2.2.16-.47
-
-
-
-Unknown
-
-
-
-
-kernel-2.2.14-52560kernel-2.2.16-.42560
-
-
-
-
-
-
-
-
-kernel-2.2.14-5128kernel-2.2.16-.4128
-
-
-
-----
-!!10.2. Creating and configuring buffer pools
-
-A buffer pool is a database object representing system memory used
-to cache table and index data as it is read from disk or modified.
-DB2 allocates a default buffer pool of 4 megabytes of memory. This
-is a ridiculous default for a production database because it will
-inhibit performance greatly. To get good performance out of DB2,
-you must create one or more buffer pools and associate them with
-the tablespaces used to hold the tables in your database. For more
-information on buffer pools and increasing performance, see the
-''IBM DB2 Administration Guide: Performance''.
-
-
-
-
-On a system with a 2.2 kernel compiled with support for b1 gigabyte of
-RAM, the practical upper limit for buffer pools is about 1 gigabyte of memory
-due to the location in memory in which Linux loads shared libraries.
-
-
-----
-!!!11. Installing the IBM Developer Kit for Java
-
-This section gives you quick and dirty instructions on how to install the
-IBM Developer Kit for Java, version 1.1.8 or 1.3.
-You need the IBM Developer Kit for Java to run the DB2 Control Center
-or Java applications or applets that connect to DB2.
-Note that these instructions are not meant to replace the documentation
-supplied with the IBM Developer Kit for Java.
-
-
-
-
-
-__Warning__
-
-For DB2 Version 7.1, you cannot use other versions of Java. Versions
-of the Java Virtual Machine (JVM) supplied by other
-software organizations are not supported.
-
-
-
-
-
-
-
-__Installing the IBM Developer Kit for Java, Version 1.1.8__
-
-
-#
-
-Download the IBM Developer Kit for Java, version 1.1.8, from the
-IBM Java
-Developer's Kit downloads web site. I'll assume that you
-download the RPM package of the IBM Developer Kit for Java.
-
-
-
-#
-#
-
-Install the IBM Developer Kit for Java by issuing the following command as root:
-
-bash# rpm -ivh IBMJava118-SDK-1.1.8-2.-i386.rpm
-
-
-
-
-I most recently tested IBM JDK 1.1.8 build 20010115a successfully on
-Red Hat 6.2. To see which build of the IBM JDK you are using,
-issue the __java -fullversion__ command.
-
-
-
-#
-#
-
-Add the following lines to your /etc/profile file to set
-up the Java environment for all users:
-
- export JAVA_HOME=/usr/jdk118
-export PATH=$PATH:$JAVA_HOME/bin
-export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/classes.zip
-
-
-
-__Note: __
-Caldera users should see Section 3.1.1 for instructions on
-configuring the IBM Developer Kit for Java on Caldera !OpenLinux.
-
-
-
-
-
-__Note: __
-Red Hat 7.1 enabled a floating point stack feature in the glibc library
-that breaks the IBM JDK 1.1.8. Other distributions might follow their lead.
-If the DB2 Control Center refuses to start successfully or your Java applications
-do not work, you can disable the floating point stack by
-setting the LD_ASSUME_KERNEL environment variable to
-2.2.5 before running the DB2 Control Center as follows:
-
-bash$ export LD_ASSUME_KERNEL=2.2.5
-
-
-
-
-
-
-
-#
-
-__Installing the IBM Developer Kit for Java, Version 1.3__
-
-
-#
-
-Download the IBM Developer Kit for Java, version 1.3, from the
-IBM Java
-Developer's Kit downloads web site. I'll assume that you
-download the RPM package of the IBM Developer Kit for Java.
-
-
-
-#
-#
-
-Install the IBM Developer Kit for Java by issuing the following command as root:
-
-bash# rpm -ivh IBMJava2-SDK-1.3-1.1-i386.rpm
-
-
-
-
-I most recently tested build cx130-20010329
-successfully with Red Hat 7.1. To see which build of the
-IBM JDK you are using, issue the __java -fullversion__ command.
-
-
-
-#
-#
-
-Add the following lines to your /etc/profile file to set
-up the Java environment for all users:
-
- export PATH=$PATH:/opt/IBMJava2-13/bin
-
-
-
-__Note: __
-Caldera users should see Section 3.1.1 for instructions on
-configuring the IBM Developer Kit for Java on Caldera !OpenLinux.
-
-
-
-
-
-
-#
-#
-
-IBM JDK 1.3 does away with the __jre__ command, even if you
-install the the IBM JRE 1.3 package.
-However, the __db2cc__ script calls the
-__jre__ command. The easiest solution is to create a link
-called __jre__ to the __java__ executable
-in the /opt/IBMJava2-13/bin directory
-by issuing the following command as root.
-
-bash# ln -sf /opt/IBMJava2-13/jre/bin/java /opt/IBMJava2-13/jre/bin/jre
-
-
-
-
-#
-#
-
-The __db2cc__ script calls the __jre__ command
-with the -nojit argument, which is not supported in IBM JDK 1.3.
-Remove the option by changing line 44 of /usr/IBMdb2/V7.1/bin/db2cc
-to the following:
-
-JRE_OPTIONS="-ss256k -mx128m -Ddb2path=$DB2PATH"
-
-
-
-
-#----
-!!!12. Using the 2.4 kernel with DB2 Version 7.1
-
-The Linux 2.4 kernel changes the default values of some ipc
-limits. However, the default value for the msgmni is
-16, which causes difficulties running DB2 with the
-default 2.4 kernel ipc parameters.
-Fortunately, the 2.4 kernel also enables you to change a number
-of these parameters through the /proc
-filesystem. With the 2.4 kernel, you do not have to recompile your kernel to
-experiment with different parameter values.
-
-
-
-
-Configure the msgmni parameter by issuing the
-__sysctl__ command as root:
-
-bash# sysctl -w kernel.msgmni=128
-
-You can also change values directly in /proc/sys/kernel using the __echo__ command:
-
-bash# echo "128" b /proc/sys/kernel/msgmni
-
-
-
-
-
-To set the msgmni kernel parameter at boot time, append the
-following lines to /etc/sysctl.conf:
-
-# Sets maximum number of message queues to 128
-# Set this to 1024 or higher on production systems
-kernel.msgmni = 128
-
-To check the current ipc settings, issue the
-__ipcs -l__ command:
-
-bash$ ipcs -l
------- Shared Memory Limits --------
-max number of segments = 4096
-max seg size (kbytes) = 32768
-max total shared memory (kbytes) = 8388608
-min seg size (bytes) = 1
------- Semaphore Limits --------
-max number of arrays = 128
-max semaphores per array = 250
-max semaphores system wide = 32000
-max ops per semop call = 32
-semaphore max value = 32767
------- Messages: Limits --------
-max queues system wide = 128
-max size of message (bytes) = 8192
-default max size of queue (bytes) = 16384
-
-
-
-----
-!!!A. Resources
-
-Following is a list of references to further information on using DB2 V7.1 for Linux:
-
-
-
-
-; Newsgroups:
-
-
-
-; comp.databases.ibm-db2:
-
-Covers the use of DB2 Universal Database on all platforms, including Linux and
-other Unices, OS/2, OS/390, OS/400, and Windows. This forum is quite active.
-
-
-; ibm.software.db2.udb.v7beta on the news.software.ibm.com NNTP server:
-
-Although this newsgroup was meant to serve users trying out the DB2 V7.1 beta code,
-there are a lot of general questions about DB2 on Linux that might help answer your
-questions. Now that the final release is available, activity on this forum has
-slowed down significantly.
-
-
-; Web sites:
-
-
-
-; DB2 Library:
-
-IBM publishes many books on installing, administering, and developing applications with DB2.
-If you decide not to install the documentation when you install DB2, you can always access the
-documentation online in HTML format or download PDF versions of the books.
-
-
-; DB2 Application Development:
-
-This web site contains the latest information about restrictions, workarounds, or additional
-documentation for developing applications with DB2.
-
-
-; DB2 for Linux:
-
-This web site contains general information about using DB2 for Linux, including a link
-to the free download
-of DB2 Personal Developers Edition.
-
-
-; DB2 Magazine:
-
-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 a free subscription to the print version
-of the magazine.
-
-
-; DB2 White Papers:
-
-This web site contains white papers published by IBM about DB2. White papers typically
-provide overviews or introductions to new technology or new releases of a product.
-
-
-; International DB2 Users Group (IDUG):
-
-IDUG holds a number of international conferences on DB2 and has regional user groups.
-While IDUG has traditionally focused on DB2 for OS/390 and OS/400, they have increasingly
-included information on DB2 for Linux, other Unices, OS/2, and Windows. The IDUG web site
-includes online discussion forums and links to other DB2 resources.
-
-
-; DB2 on Debian:
-
-Andika Triwidada contributed most of the information in this document
-about installing DB2 on Debian, using __rpm__ to
-install the DB2 packages. The web page is the original source of that information.
-For those interested in installing previous releases of DB2 for Linux on Debian,
-Andika also includes information on running DB2 Version 5.2 and DB2 Version 6.1 on Debian.
-
-
-; Agnostic DB2 V7.1 for GNU/Linux:
-
-Another page on installing DB2 on a platform that favours the
-__dpkg__ package manager, written by Tiago Antao.
-His approach uses __rpm__ and __alien__ to convert
-the packages tgz archives, then decompress the packages
-using __tar__ and __gzip__.
-
-
-; Full text searching with DB2 on Linux and SWISH++:
-
-The Text Extender allows you to perform full-text indexing and searches of databases
-on DB2. Unfortunately, the Text Extender is not yet available for DB2 for Linux.
-
-
-
-
-To fill the void, Kevin Sangalee has put together an excellent page on an alternative
-method of providing similar function. From the site:
-
-
-This document describes way to provide this functionality using the
-text indexing package SWISH++, a User Defined Function (in this case, written in C),
-and a Perl script. It should be taken as an overview guide rather than as detailed
-instructions, since the solution may require some coercing to fit with other applications.
-
-
-
-
-
-
-
-
-----
-!!!B. GNU General Public License
-
-Version 2, June 1991
-
-
-
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-
-
- Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-
-
-----
-!!!B.1. Preamble
-
-The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
-
-
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-
-
-
-
-To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-
-
-
-
-For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
-
-
-
-
-We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-
-
-
-
-Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-
-
-
-
-Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-
-
-
-
-The precise terms and conditions for copying, distribution and
-modification follow.
-
-
-----
-!!B.1.1. GNU GENERAL PUBLIC LICENSE
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-
-. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-
-
-
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-
-
-
-
-1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-
-
-
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-
-
-
-
-2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-
-
-
-
-a) You must cause the modified files to carry prominent notices
-stating that you changed the files and the date of any change.
-
-
-
-
-
-b) You must cause any work that you distribute or publish, that in
-whole or in part contains or is derived from the Program or any
-part thereof, to be licensed as a whole at no charge to all third
-parties under the terms of this License.
-
-
-
-
-
-c) If the modified program normally reads commands interactively
-when run, you must cause it, when started running for such
-interactive use in the most ordinary way, to print or display an
-announcement including an appropriate copyright notice and a
-notice that there is no warranty (or else, saying that you provide
-a warranty) and that users may redistribute the program under
-these conditions, and telling the user how to view a copy of this
-License. (Exception: if the Program itself is interactive but
-does not normally print such an announcement, your work based on
-the Program is not required to print an announcement.)
-
-
-
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-
-
-
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-
-
-
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-
-
-
-
-3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-
-
-
-
-a) Accompany it with the complete corresponding machine-readable
-source code, which must be distributed under the terms of Sections
-1 and 2 above on a medium customarily used for software interchange; or,
-
-
-
-
-
-b) Accompany it with a written offer, valid for at least three
-years, to give any third party, for a charge no more than your
-cost of physically performing source distribution, a complete
-machine-readable copy of the corresponding source code, to be
-distributed under the terms of Sections 1 and 2 above on a medium
-customarily used for software interchange; or,
-
-
-
-
-
-c) Accompany it with the information you received as to the offer
-to distribute corresponding source code. (This alternative is
-allowed only for noncommercial distribution and only if you
-received the program in object code or executable form with such
-an offer, in accord with Subsection b above.)
-
-
-
-
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-
-
-
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-
-
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program 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.
-
-
-
-
-
-5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-
-
-
-
-6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-
-
-
-
-7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-
-
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-
-
-
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-
-
-
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-
-
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-
-
-
-
-9. The Free Software Foundation may publish revised and/or new versions
-of the General Public 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.
-
-
-
-
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-
-
-
-
-10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-
-
-
- NO WARRANTY
-
-
-
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-
-
-
-
-12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-
-
-
- END OF TERMS AND CONDITIONS
-
-
-----
-!!B.1.2. How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-
-
-
-
-To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
-
-''one line to give the program's name and a brief idea of what it does.''
-Copyright (C) ''yyyy name of author''
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-
-
-
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-
-
-Gnomovision version 69, Copyright (C) ''year name of author''
-Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-This is free software, and you are welcome to redistribute it
-under certain conditions; type `show c' for details.
-
-
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-
-
-
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
-
-
-Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-`Gnomovision' (which makes passes at compilers) written by James Hacker.
-''signature of Ty Coon'', 1 April 1989
-Ty Coon, President of Vice
-
-
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License
.
+Describe
[HowToDB2HOWTO
] here.