Dremio JDBC Driver
The legacy Dremio JDBC driver is included as a part of Dremio installations under
<DREMIO_HOME>/jars/jdbc-driver/. The main JAR Class is
It is recommended to use the JDBC driver for Arrow Flight SQL, rather than this legacy JDBC driver.
A new version of the JDBC driver is made available with every release of Dremio software. However, this doesn’t mean changes or new features were introduced in a driver release. Only when actual changes are made to a driver will the JDBC driver release notes be published.
Tip: To distribute query planning for JDBC connections, configure secondary coordinator nodes for your deployment.
You can set up the JDBC driver in the following manner:
- Connect directly to the Dremio server
- Connect to the Dremio server via Zookeeper
Connecting directly to Dremio
The following configuration establishes a direct connection to a Dremio coordinator node. Planning is done on the specified node.Connect directly to Dremio coordinator node
Connecting to ZooKeeper
The following configuration establishes a distributed connection to Dremio coordinator nodes through a Zookeeper quorum. Planning is distributed across the available coordinator nodes.Connect to Dremio coordinator node with ZooKeeper
Multiple Dremio Clusters in the same ZooKeeper QuorumCluster A
JDBC Parameters for Dremio Wire Encryption
If you are setting up encrypted communication between your ODBC/JDBC client applications and the Dremio server, use the SSL JDBC connection parameters and fully qualified host name to configure the JDBC connection string and connect to Dremio.
|ssl||true/false||[Optional]||If true, SSL is enabled. If not set or set to false, SSL is not enabled.|
|trustStoreType||string||[Optional]||Default: JKS The trustStore type. Allowed values are : JKS PKCS12
If the useSystemTrustStore option is set to true (on Windows only), the allowed values are: Windows-MY Windows-ROOT
Import the certificate into the Trusted Root Certificate Authorities and set
Also import the certificate into Trusted Root Certificate Authorities or Personal and set
|trustStore||string||[Optional]||Path to the truststore.
If not provided, the default Java truststore is used (usually $JAVA_HOME/lib/security/cacerts) and the trustStorePassword parameter is ignored.
|useSystemTrustStore||true/false||[Optional]||By default, the value is
|trustStorePassword||string||[Optional]||Password to the truststore.|
|disableHostVerification||true/false||[Optional]||If true, Dremio does not verify that the host in the certificate is the host we are connecting to. False by default.
(Hostname verification follows the specification in RFC2818)
|disableCertificateVerification||true/false||[Optional]||If true, Dremio does not verify the host certificate against the truststore. False by default.|
Optional Advanced JDBC Driver Properties
|impersonation_target||string||When inbound impersonation is configured,
|routing_queue||string||Specifies the queue to use for processing queries while a connection is open. For more information, see Query Tagging & Direct Routing Configuration.|
|routing_tag||string||Sets a tag for rule processing. The specified tag is associated with all queries executed while a connection is open. Rules can check for the presence of a tag with the function