Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

JDBC Drivers for a number of DBMSs are included with JS7. However, due to restrictions placed on bundling JDBC Drivers with Open Source software for some DBMS products, users have to download the JDBC Driver from the vendor's web site themselves:

DBMS
Product
DBMS
Version
JDBC Driver
Version
JDBC Driver
File
JDBC Driver
License
Included with JS7Comment
H2®2.3.2322.3.232h2-2.3.232.jarMPL 2.0, EPL 1.0no

DBMS and JDBC Drivers are Open Source

Use Java Option (JS7 - How To - Apply Java Options):
--add-opens=java.base/sun.reflect.annotation=ALL-UNNAMED

MariaDB®10, 11

from Release 2.7.3: 3.5.0
until Release 2.7.2:  2.7.2

mariadb-java-client-3.5.0.jar
mariadb-java-client-2.7.2.jar

LGPLyesDBMS and JDBC Drivers are Open Source
MySQL®5.7, 8.08.xmysql-connector-java-8.x.jarProprietary Licenseno

DBMS is Open Source, JDBC Drivers are not Open Source

The MariaDB® JDBC Driver can be used for access to MySQL® databases

Oracle®12c, 18c, 19c, 21c
21.8

from Release 2.7.3: 19.25
until Release 2.7.2: 19.19

ojdbc8-19.24.0.0.jar
ojdbc8-19.19.0.0.jar

FUTC Licenseyes

DBMS and JDBC Drivers are not Open Source

Use ojdbc8*.jar for Java 8 and Java 11
Use ojdbc11*.jar for Java 11 and Java 17

PostgreSQL®10, 11, 12, 13, 14, 15from Release 2.7.3: 42.7.4
until Release 2.7.2: 42.4.3
postgresql-42.7.4.jar
postgresql-42.4.3.jar
BSD 2-clauseyesDBMS and JDBC Drivers are Open Source
SQL Server®2016, 2017, 2019, 20229.x, 10.x, 11.x, 12.xmssql-jdbc-<version>.jre8.jar
mssql-jdbc-<version>.jre11.jar
mssql-jdbc-<version>.jre17.jar
Proprietary Licenseno

DBMS and JDBC Drivers are not Open Source
Use mssql*.jre11.jar for Java 11
    (JDBC Driver version 7.2 to 9.x)
Use mssql*.jre17.jar for Java 17
    (JDBC Driver version 10.2 and newer)


In most situations it is technically possible to operate JS7 with newer versions of a DBMS or JDBC Driver if the version is actively supported by the DBMS vendor. Users frequently ask if JS7 is compatible with newer versions of a DBMS or JDBC Driver. It's the wrong question and your DBA should know the answer. Consider the following example for Oracle® that similarly applies to other DBMSs:

  • Oracle® ships a newer version of their DBMS compatible to previous versions, e.g. the 19c release is compatible to 18c and down to 12c and 10g.
  • Compatibility includes that your DBA identifies the technical compatibility switch in the DBMS to run the 19c version compatible to 18c, 12c etc. This means your DBA is in control of compatibility.
  • SOS documents that JS7 is compatible to Oracle® 12c and 18c. This boils down to the fact that your DBA can run any newer version of the DBMS in a compatibility mode that supports 12c or 18c.
  • The question if SOS will ship a JS7 release specifically for 19c would mean that the product is no longer compatible to earlier releases of the DBMS. This will not happen. The JS7 is not too demanding when it comes to the DBMS, which is considered as a datastore.

The same applies to JDBC Drivers. There might be newer versions of JDBC Drivers that e.g. include bug-fixes. Do not ask SOS if JS7 is compatible to a specific JDBC Driver version. Ask your DBMS vendor if a newer version of the JDBC Driver is compatible to the one stated above. When picking a JDBC Driver then check compatibility with the Java version in use. For Java versions that can be used with JS7 see the Which Java versions is JobScheduler available for? article.

...

As a prerequisite users have to download the H2 DBMS/JDBC Driver that both ship from a single .jar file, for example from using http://www.h2database.com/html/download-archive.html:

  • JDBC Driver version 12.43.200 232 is reported to work with JS7 2.7.x.
  • The DBMS/The JDBC Driver .jar file, for example example h2-12.43.200232.jar
    • can be specified with the JOC Cockpit graphical installer,
    • can be added to an existing JOC Cockpit installation, see chapter Individual JDBC Driver Versions.
      • In this situation users can run the following commands
        • cd $JETTY_BASE | cd %JETTY_BASE%
        • ../install/joc_install_tables.sh | ..\joc_install_tables.cmd
      • It is required to navigate to the JETTY_BASE directory to run the above commands in order to have the database being created in ./resources/joc/h2.as specified by the H2® Hibernate configuration file.

An Operation Script for H2® databases is explained from the JS7 - How to operate H2 Databases from the Command Line article.

H2® ships with a console application that by default is available for browsers from port 8082. It is not required to run the H2® console application, however, find the following information how to invoke the console application.:

  • JOC Cockpit has to be stopped as if the embedded H2® database can be used by a single client only. Use of the AUTO_SERVER=TRUE property in the JDBC URL allows to operate JOC Cockpit and the H2® console application in parallel.
  • The console application and the database are started by invoking the H2® .jar file like this:
    • cd $JETTY_BASE | cd %JETTY_BASE%
    • java -jar ./lib/ext/joc/h2-12.43.200232.jar -webAllowOthers -tcpAllowOthers
  • It is required to navigate to the JETTY_BASE directory to run the above commands in order to have the database being created in ./resources/joc/h2.as specified by the H2® Hibernate configuration file.
  • The H2® console application should launch a browser window if executed from the local machine and otherwise will displays a URL to connect to the application.
  • For login users should specify
    • the URL: jdbc:h2:./resources/joc/h2/joc as indicated from the above Hibernate configuration file
    • the user name: joc
    • an empty password.

...