DB2 10.5 for Linux, UNIX, and Windows

Installing the IBM Data Server Driver for JDBC and SQLJ

After you install the IBM® Data Server Driver for JDBC and SQLJ, you can prepare and run JDBC or SQLJ applications.

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 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 must install an SDK for Java, 6 or later.

    If you want to use JDBC 4.1 functions, you must 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 runtime 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 support
    System 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 must 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.

Restrictions

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 for Linux, UNIX, and Windows instance from a 32-bit Java application.

Procedure

To install the IBM Data Server Driver for JDBC and SQLJ:

  1. During the DB2 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 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 must 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 files
      License file Server to which license file permits a connection Product that includes license file
      db2jcc_license_cisuz.jar
      • DB2 for z/OS®
      • DB2 for i
      All DB2 Connect™ products

      Client license files are not required for connections to DB2 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 must activate the server license key for DB2 Connect Unlimited Edition for System z. You must 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
  2. Customize the driver-wide configuration properties, if any of the defaults are inappropriate.
  3. 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 the server and port number in the connection URL.

    Ensure that the TCP/IP listener is running. To activate the TCP/IP listener:

    1. Set the environment variable DB2COMM to TCPIP:
         db2set DB2COMM=TCPIP
    2. 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 must be the same as the TCP/IP svcename number used in the database manager configuration file.
    3. Execute the db2stop and db2start commands for the service name setting to take effect.
  4. On DB2 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:

    • For database systems on UNIX or Linux:
      db2 update dbm cfg using JDK_PATH /home/db2inst/jdk15
      /home/db2inst/jdk15 is the path where the SDK for Java is installed.
    • For database systems on Windows:
      db2 update dbm cfg using JDK_PATH c:\Program Files\jdk15
      c:\Program Files\jdk15 is the path where the SDK for Java is installed.
    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.
  5. If you plan to call SQL procedures that are on DB2 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:
    1. 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"
    2. 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.
  6. 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."