Admin manage drivers
You can customize drivers configuration in the workspace/.metadata/.config/drivers.xml file.
File structure¶
The file has a <drivers> root element. Each driver lives inside a <provider> element. The <driver> element holds
the connection details, and one or more <library> elements list the files the driver needs.
Example
<?xml version="1.0" encoding="UTF-8"?>
<drivers>
<provider id="postgresql">
<driver id="postgres-jdbc" categories="sql" name="PostgreSQL" class="org.postgresql.Driver" url="jdbc:postgresql://{host}[:{port}]/[{database}]" port="5432" description="PostgreSQL standard driver" custom="false">
<library type="jar" path="maven:/org.postgresql:postgresql:RELEASE" custom="false" version="42.7.11">
<file id="org.postgresql:postgresql:RELEASE" version="42.7.11" path="${drivers_home}/maven/maven-central/org.postgresql/postgresql-42.7.11.jar"/>
</library>
<library type="jar" path="maven:/net.postgis:postgis-jdbc:RELEASE" custom="false" version="2.5.0" ignore-dependencies="true">
<file id="net.postgis:postgis-jdbc:RELEASE" version="2.5.0" path="${drivers_home}/maven/maven-central/net.postgis/postgis-jdbc-2.5.0.jar"/>
</library>
<library type="license" path="licenses/external/pg.txt" custom="false"/>
</driver>
</provider>
</drivers>
Driver attributes¶
The <driver> element maps to the fields on the Driver Manager
Main parameters screen.
| Attribute | Description |
|---|---|
id |
Unique identifier for the driver |
name |
Name shown in the Driver Manager |
class |
Fully qualified JDBC driver class |
url |
URL template used to build the connection string |
port |
Default port |
categories |
Comma-separated groups used to sort the driver in the list |
description |
Short description of the driver |
custom |
true for a driver you added yourself, false for a preconfigured one |
embedded |
true if the database runs embedded inside the application |
Library attributes¶
Each <library> element points to one file the driver depends on.
| Attribute | Description |
|---|---|
type |
File type - jar or zip for driver files, license for a license text file |
path |
Local path to the file, or a Maven coordinate like maven:/group:artifact:RELEASE |
custom |
true for a library you added yourself, false for one shipped with DBeaver |
version |
Version currently downloaded and in use |
ignore-dependencies |
true to skip resolving the library's transitive Maven dependencies |
Note
For Maven libraries, DBeaver caches each resolved file in a nested <file> element with its exact version,
path, and checksum. You don't need to edit these entries.
You can also set driver-specific options with <parameter> elements inside a <driver>. Each one takes a name and
a value, for example <parameter name="read-only-data" value="false"/>.
Configure drivers with pre-installed jars¶
If you have some pre-installed jar files you can reference them in drivers.xml.
You can use the following variables to specify relative paths:
| Variable | Meaning |
|---|---|
${drivers_home} |
Standard DBeaver drivers location - ($workspace/drivers by default) |
${dbeaver_home} |
DBeaver installation folder |
${home} |
User home folder |
${workspace} |
DBeaver workspace path. For instance: <library type="jar" path="${workspace}\drivers\my-driver.jar" custom="true"/> |
Provide predefined drivers configuration¶
In some cases you may need to provide a driver's configuration or driver jar files for a number of DBeaver installations automatically.
This can be done by adding a special parameter in the dbeaver.ini file:
-Ddbeaver.drivers.configuration-file=c:\some-path\dbeaver-drivers-config.xml
Tip
Detailed instructions on finding dbeaver.ini are available
in our article.
This file has the same structure as drivers.xml file (see above) and it will be loaded before drivers.xml.
Example
If you need to configure only the jar path then it may look like this:
Note
Add custom drivers under an existing provider such as generic. A driver under a new, unregistered provider
id is ignored.