DBTrail
DBTrail EE

Licensing

Installing and verifying a DBTrail EE license. The status words, expiry, the 30-day grace window, and the updates window

Two clocks decide whether enterprise features are on. Expiry, against today's date: a commercial license is valid, then 30 days of grace with warnings and features still on, then expired with features off; a trial goes from valid straight to expired at expires_at. The free core keeps capture, query and recovery running in every state. Updates window, against the build date: builds dated up to updates_until run licensed forever; a newer build reports updates-lapsed. Validation is offline: an Ed25519 signature checked against a public key built into the binary, no network call.

One binary for every customer; the license claims turn features on. A license never stops capture, query or recovery: Enterprise features.

Installing a license

Search order. If DBTRAIL_LICENSE is set, that file is used or the result is invalid, and the search stops. Otherwise /etc/dbtrail/license.lic, then ./dbtrail.lic in the working directory. The first file that verifies wins; a corrupt higher-priority file never shadows a valid lower one.
sudo install -D -m 0644 acme.lic /etc/dbtrail/license.lic
# or an explicit path
export DBTRAIL_LICENSE=/opt/dbtrail/acme.lic
dbtrail-ee license
  • DBTRAIL_LICENSE is authoritative: a missing or bad file there is invalid, never a silent fall-through to another path. Unset it to use the chain.
  • Without it, the chain scans past unreadable or corrupt files. Nothing verifies but a corrupt file was seen: invalid at that file, not missing.

Verifying a license

dbtrail-ee license prints the status, the claims and a verdict per candidate path. It needs no license and changes nothing. Exit 0 when enterprise features are on (valid or grace), 1 otherwise, so dbtrail-ee license || alert works from cron.

$ dbtrail-ee license
status:   valid
file:     /opt/dbtrail/acme.lic
customer: Acme Corp
type:     commercial
expires:  2027-07-03 (updates until 2027-07-03)
features: audit, forensics

enterprise features: true

candidate paths (priority order):
  - /opt/dbtrail/acme.lic (DBTRAIL_LICENSE): valid
  - /etc/dbtrail/license.lic: not found
  - dbtrail.lic: not found

The status words

StatusFeaturesMeaning
validonSignature good, not expired, build inside the updates window
graceonUp to 30 days past expires_at, commercial only. Warns on every start
expiredoffPast grace (commercial) or past expires_at (trial)
updates-lapsedoffBinary built after updates_until. Run an older release or renew
invalidoffBad signature or format, unusable DBTRAIL_LICENSE, or a claims schema newer than this build
missingoffNo license anywhere in the chain

Every "off" state still runs the full open-source core.

Expiry, grace, and the updates window

  • Commercial: 30-day grace after expires_at (the expiry day itself still counts). A late renewal never hard-stops a recovery tool mid-incident.
  • Trial: no grace. The banner says the trial ended.
  • Empty or unknown type: treated as commercial.
  • updates_until: compared with the binary's build date, not today. Any build inside the window runs licensed forever. Dev builds carry no build date and skip this check.
  • Newer claims schema: invalid, and the fix is to upgrade dbtrail-ee, not to renew. The command and the banner say so.

The startup banner

Any state other than valid and missing prints one warning line to stderr before the command runs. A license file that exists but cannot be read (a directory bind-mounted over a missing host file, a 0600 file owned by another user) always warns, even when another path verified. A license claiming audit that is not enabled prints a second line: when an audit license lapses.

Claims

FieldMeaning
customerLicensed organization
typecommercial or trial
expires_atExpiry date, YYYY-MM-DD
updates_untilNewest build date accepted, YYYY-MM-DD
featuresaudit, forensics, rbac, sso (Enterprise features)
instancesContractual count: reported, never enforced

Renewals and sales

dbtrail.com/pricing · contact@dbtrail.com. Every banner quotes these.

On this page