Options
Mandatory options are marked with an asterisk (*).
Option Syntax
Section titled “Option Syntax”--<option>=<value>Example:
--accessToken=IGsLxJQLnfZPFAkbMCaJntBjIaKtmYSOjnYiRTIlfYJYRggZgG<option>=<value>Example:
accessToken=IGsLxJQLnfZPFAkbMCaJntBjIaKtmYSOjnYiRTIlfYJYRggZgGDBLINTER_<option_IN_SCREAMING_SNAKE_CASE>=<value>Example:
export DBLINTER_ACCESS_TOKEN=IGsLxJQLnfZPFAkbMCaJntBjIaKtmYSOjnYiRTIlfYJYRggZgGset DBLINTER_ACCESS_TOKEN=IGsLxJQLnfZPFAkbMCaJntBjIaKtmYSOjnYiRTIlfYJYRggZgG$env:DBLINTER_ACCESS_TOKEN="IGsLxJQLnfZPFAkbMCaJntBjIaKtmYSOjnYiRTIlfYJYRggZgG"Workspace
Section titled “Workspace”workspace
This is the absolute path to the working directory of the command. The default is the current directory. The workspace defines where dbLinter looks for files to analyse, and is also used to calculate the relative path shown in various reports.
Remote Access
Section titled “Remote Access”-
repoUrl
This is the URL of the dbLinter REST API. The default is https://api.dblinter.app/. You only need to change this URL when developing and testing custom rules. This requires a Professional subscription. -
tenantName*
The dbLinter tenant used for authentication. -
userName*
The dbLinter user name (email address) used for authentication. -
accessToken*
The personal dbLinter access token used for authentication. You can manage the access token in the Web GUI. There you define the validity period and the access rights. -
configName*
This is the name of the configuration to be used for checks and SQL-based tests. This configuration consists of include/exclude file patterns and JDBC connection details. It also includes enabled rules, parameters, and test results to be ignored.
Read-only Database Access
Section titled “Read-only Database Access”Read-only access is required for the test command and optional for the check command.
However, to achieve the best results, it is recommended that read-only database access is also defined for the check command.
To enable read-only access, you will need to create a database user with the following permissions:
create user if not exists dbl_read identified by "(...)";grant connect to dbl_read;grant select any dictionary to dbl_read;-
connJdbcUrl
This is the JDBC URL for read-only database access. This option takes precedence over the JDBC URL configured in the Web GUI. The CLI comes with database drivers for Oracle Database and PostgreSQL. Therefore, only JDBC URLs valid for these DBMSs will work. Here are two examples:jdbc:oracle:thin:@localhost:1521/FREEPDB1jdbc:postgresql://localhost:5432/postgres
-
connUserName
The JDBC user for read-only database access. This option takes precedence over the JDBC user configured in the Web GUI. -
connPassword
This is the password for the JDBC user for accessing the read-only database. This option takes precedence over the password configured in the Web GUI.
Logging
Section titled “Logging”-
logLevel
This is the log level used to write log messages to the log file. The following levels are valid:off: No log messages are written, produces an empty log file.error: Log only errors.warning: Log only warnings and errors.info: Log only info messages, warnings and errors. This is the default.debug: Log only debug messages, info messages, warnings and errors.trace: Log all messages. This level helps developers diagnose the root cause of a problem. It also includes profiling information for parsing and checking operations that can slow overall performance.
-
logFile
This is the relative path from the working directory to the log file. The target directory must exist. Per default no log file is created. -
logFormat
This is the log format use to write log messages to the log file. The following formats are valid:short: Short messages. Date, time, log level, and log message. This is the default. Example:
2025-12-13 18:42:42.420 [Info ] connect.ext1: Like short messages, but with the thread name. Example:
2025-12-13 18:42:42.420 [Info ] [ main] connect.ext2: Like short messages, but with logger class name. Example:
2025-12-13 18:42:42.420 [Info ] [c.g.d.l.DbLinterLanguageServer] connect.ext3: Like short messages, but with thread name and logger class name. Example:
2025-12-13 18:42:42.420 [Info ] [ main] [c.g.d.l.DbLinterLanguageServer] connect.
clearCacheThreshold
Memory threshold in megabytes. The default is calculated as follows:
if (parallel == 1) {clearCacheThreshold = Math.max(maxHeap * .7, maxHeap - 1024);} else {clearCacheThreshold = Math.max(maxHeap * .6, maxHeap - 2048);}
The defaultmaxHeapsize in a JDK 17 is set to 25% of the physical memory. This can be changed by setting the-XmxJVM extra option via theJAVA_OPTSenvironment variable.
The ANTLR caches are cleared once the heap size used by the language server exceeds this threshold. While this frees up memory, subsequent parsing is slower. Set the threshold to a negative value to retain the cache. The cache is only cleared when analysing a file.
Properties File
Section titled “Properties File”options
Load options and command arguments from a Java properties file. See also example in CLI Overview.