About Apache Derby
The Apache Derby package that is bundled with the application server is backed by full IBM Quality Assurance (QA).
WebSphere Application Server supports direct customer use of the Apache Derby database in test environments only. The product does not support direct customer use of Apache Derby database in production environments. The product supports the use of Apache Derby only by internal application server componentsf in production environments.
Unlike versions 5.1.60x and earlier, Apache Derby is a pure Java database server. The Apache Derby code base, which the open source community calls Derby, is a product of the Apache Software Foundation (ASF) open source relational database project. Apache Derby includes the Derby base code without any modification to the underlying source code. We can investigate more incompatibilities about Derby code at the Apache Derby website.
Earlier versions of Apache Derby cannot conduct two phase-commit transactions over the Network Server framework, but later versions of the Derby Client JDBC driver provides Apache Derby with support for XA transactions. Only the Network Server framework provides support for multiple Java virtual machines (JVMs), such as application servers, to access Apache Derby.
Apache Derby is equipped with the following .bat/sh tools:
- sysinfo: displays database version information
- ij: manipulates the database instances. When we run the ij tool, surround the dbname by double quotation marks ("") if it includes the full path name; for example:
ij> connect '"c:\temp;create=true"'This is '"" ' without spaces.- dblook: dumps DDL information
- networkServerControl: controls the networkServer process (can be used for functions such as ping and trace)
- startNetworkServer: starts the networkServer process
- stopNetworkServer: stops the networkServer process
If we use non-English characters in your Derby database name, we need to update the ij script to specify the file encoding property to the JVM: -Dfile.encoding=XXXXXX, where XXXXXX is the encoding used to create the non-English characters.
Related:
Transaction type and connection behavior Data source minimum required settings, by vendor Apache Derby website