After you install the IBM® Data Server Driver for JDBC and SQLJ, you can prepare and
run JDBC or SQLJ applications.
About this task
Restriction: If you install the IBM Data Server
Driver for JDBC and SQLJ on a Windows 64-bit
operating system, you cannot use IBM Data Server Driver for JDBC
and SQLJ type 2 connectivity to connect to a DB2 Database for Linux, UNIX, and Windows instance from a 32-bit Java application.
Follow these steps to install the IBM Data Server
Driver for JDBC and SQLJ.
Before you begin
Before you install the
IBM Data Server
Driver for JDBC and SQLJ, you need the following software.
- An SDK for Java™, 1.4.2 or
later.
For all DB2® products
except the IBM Data Server Runtime Client and the IBM Data
Server Driver Package, the DB2 Database for Linux, UNIX, and Windows installation process automatically installs the SDK for Java, Version 5.
If you want
to use JDBC 4.0 functions, you need to install an SDK for Java, 6 or later.
If you want to use JDBC 4.1 functions, you need to install
an SDK for Java, 7 or later.
If you plan to run JDBC or SQLJ applications on your system, but
not to prepare them, you need a Java run-time environment only.
Important: Support for the SDK for Java 1.4.2 is deprecated for Java routines, and might be discontinued in a future release.
- JVM native threads support
Any JVMs that run Java applications that access DB2 databases must include native threads support.
You can specify native threads as the default thread support for some
JVMs by setting the THREADS_FLAG environment variable to "native".
Refer to the documentation for your Java environment for instructions on making native threads the
default on your system.
- Unicode support for System i® servers
If any SQLJ or JDBC programs will use
IBM Data Server Driver for JDBC
and SQLJ type 4 connectivity to connect to a DB2 for i server, the System i operating system must support the Unicode UTF-8 encoding scheme.
The following table lists the System i PTFs that you need for Unicode UTF-8 support:
Table 1. System i PTFs for Unicode
UTF-8 supportSystem i version |
PTF numbers |
V5R3 or later |
None (support is included) |
- Java support for HP-UX clients
and servers
HP-UX servers: The IBM Data Server
Driver for JDBC and SQLJ does not support databases that are in the HP-UX default
character set, Roman8. Therefore, when you create a database on an
HP-UX server that you plan to access with the IBM Data Server
Driver for JDBC and SQLJ, you need to create the database with a different character
set.
HP-UX clients and servers: The Java environment on an HP-UX system requires
special setup to run stored procedures under the IBM Data Server
Driver for JDBC and SQLJ.
Procedure
- During the DB2 Database for Linux, UNIX, and Windows installation process, select Java support on UNIX or Linux, or JDBC support on Windows. These selections
are defaults. If you have already installed DB2 Database for Linux, UNIX, and Windows without JDBC support, you can run the installation process
in Custom mode to add JDBC support.
Selection
of Java support or JDBC support causes
the installation process to perform the following actions:
- Installs the IBM Data Server
Driver for JDBC and SQLJ class files.
The files are placed in the sqllib\java
directory for Windows systems,
or the sqllib/java directory for UNIX or Linux systems.
The files names are:
- db2jcc.jar or db2jcc4.jar
- Include db2jcc.jar in the CLASSPATH if you plan to use the version
of the IBM Data Server
Driver for JDBC and SQLJ that includes only JDBC 3.0 or earlier functions.
Include db2jcc4.jar in the CLASSPATH if you plan to use
the version of the IBM Data Server
Driver for JDBC and SQLJ that includes JDBC 4.0 or later functions, and JDBC
3.0 or earlier functions.
- sqlj.zip or sqlj4.zip
- Include sqlj.zip in the CLASSPATH if you plan to prepare SQLJ
applications that include only JDBC 3.0 or earlier functions.
Include sqlj4.zip in the CLASSPATH if you plan to prepare
SQLJ applications that include JDBC 4.0 or later functions, and
JDBC 3.0 or earlier functions.
- Modifies the CLASSPATH to include the IBM Data Server
Driver for JDBC and SQLJ class files.
Important: This step is performed
automatically only for the db2jcc.jar and sqlj.zip file. If you are
using the db2jcc4.jar file or the sqlj4.zip file, you must modify
the CLASSPATH manually. Change db2jcc.jar to db2jcc4.jar or sqlj.zip
to sqlj4.zip in the CLASSPATH.
You also need to make this change in every DB2 command line window that you open.
Important: Include db2jcc.jar or db2jcc4.jar in the CLASSPATH.
Do not include both files.
Important: Include sqlj.zip
or sqlj4.zip in the CLASSPATH. Do not include both files. Do not include
db2jcc.jar with sqlj4.zip, or db2jcc4.jar with sqlj.zip.
- If IBM Data Server
Driver for JDBC and SQLJ client license files exist, the installation process installs
them and modifies the CLASSPATH to include them.
The files are
placed in the sqllib\java directory for Windows systems, or the sqllib/java directory
for UNIX or Linux systems. The file names are:
Table 2. IBM Data Server
Driver for JDBC and SQLJ license filesLicense file |
Server to which license file permits a connection |
Product that includes license file |
db2jcc_license_cisuz.jar |
|
All DB2 Connect™ products |
Client license files are not required for connections
to DB2 Database for Linux, UNIX, and Windows, Cloudscape, or IBM Informix® databases from the IBM Data Server
Driver for JDBC and SQLJ version 3.50 or later. Client license files are not required for direct connections to DB2 for z/OS if DB2 Connect Unlimited
Edition for System z® server license activation is performed.
Recommendation: If you connect to DB2 for z/OS data servers directly, rather than through a DB2 Connect gateway, and you use DB2 Connect Unlimited
Edition for System z 9.7 Fix Pack 3 or later, you should activate the server
license key for DB2 Connect Unlimited
Edition for System z. You need to activate the license key on each DB2 for z/OS subsystem or data sharing group to which you will connect.
See the DB2 Connect information for details on server license activation.
- Installs IBM Data Server
Driver for JDBC and SQLJ native libraries for support of IBM Data Server Driver for JDBC
and SQLJ type 2 connectivity.
The files are placed in the sqllib\bin directory
for Windows systems, or the
sqllib/lib directory for UNIX or Linux systems.
The file names are:
- libdb2jcct2.so
- For AIX®, HP-UX on IPF, Linux, and Solaris
- db2jcct2.dll
- For Windows
- Customize the driver-wide configuration properties, if
any of the defaults are inappropriate.
- Configure TCP/IP.
Servers must be configured
for TCP/IP communication in the following cases:
- JDBC or SQLJ applications that use IBM Data Server Driver for JDBC
and SQLJ type 4 connectivity.
- JDBC or SQLJ applications that use IBM Data Server Driver for JDBC
and SQLJ type 2 connectivity, and specify server and port in the connection URL.
Ensure that the TCP/IP listener is running. To activate
the TCP/IP listener:
- Set the environment variable DB2COMM to TCPIP:
db2set DB2COMM=TCPIP
- Update the database manager configuration file with
the TCP/IP service name as specified in the services file:
db2 update dbm cfg using SVCENAME TCP/IP-service-name
The port number used for applets and
SQLJ programs needs to be the same as the TCP/IP SVCENAME number used
in the database manager configuration file.
- Execute the db2stop and db2start commands for the service
name setting to take effect.
- On DB2 Database for Linux, UNIX, and Windows servers on which you plan to run Java stored procedures or user-defined functions,
ensure that the DB2_USE_DB2JCCT2_JROUTINE environment variable is
not set, or is set to its default value of YES, yes, ON, on, TRUE, true, or 1 on those database servers. This setting
indicates that Java stored procedures
run under the IBM Data Server
Driver for JDBC and SQLJ.
If you need to run
stored procedures under the DB2 JDBC Type 2 Driver for Linux, UNIX and Windows, set the DB2_USE_DB2JCCT2_JROUTINE
environment variable to OFF.
- On DB2 Database for Linux, UNIX, and Windows servers on which you plan to run Java stored procedures or user-defined functions,
update the database manager configuration to include the path where
the SDK for Java is located.
You can do this by entering commands similar to these on
the server command line:
To verify the correct value for the JDK_PATH field in the DB2 database
manager configuration, enter the following command on the database
server:
db2 get dbm cfg
You might want to redirect
the output to a file for easier viewing. The JDK_PATH field appears near the beginning of the output.
- If you plan to call SQL procedures that are on DB2 Database for Linux, UNIX, and Windows servers from Java programs, and the date and time format that is associated with the
territory code of the database servers is not the USA format,
take the following actions:
- Set the DB2_SQLROUTINE_PREPOPTS registry variable on
the database servers to indicate that the default datetime format
is ISO:
db2set DB2_SQLROUTINE_PREPOPTS="DATETIME ISO"
- Redefine any existing SQL procedures that you plan to
call from Java programs.
These steps are necessary to ensure that the calling application
receives date and time values correctly.
- If you plan to access DB2 for z/OS database servers with your Java applications, follow the instructions in "Special setup
for accessing DB2 for z/OS servers from Java programs."