Licensing and Registration

A license unlocks the DbSchema Pro or Architect features on your computer. You register it in DbSchema from Help → Register License, in one of three ways: your DbSchema account, a license key, or a license server on your network.

The Registration dialog with the three ways to register: DbSchema Account, License Key and Floating License Server

The top of the dialog shows the state of the current license, such as Trial or Licensed, and its edition.

Which edition and license do I need?

DbSchema comes in three editions, each one adding to the one before:

  • Community is free. It covers connecting, diagrams and the SQL editor.
  • Pro adds, among others, saving the model file, schema synchronization and documentation export.
  • Architect adds logical design and more.

The Pricing & Editions page has the full comparison.

A license is also described by three more choices.

Who pays:

  • Commercial: a company or an organization pays.
  • Personal: an individual pays, out of their own pocket. Paid work is allowed. A company may not buy personal licenses for its employees.
  • Educational: for students and teachers.

Only a commercial license can be reassigned to another person.

How you pay:

  • Perpetual fallback: you buy once and get one year of updates and support. After that year, you keep the versions released within it. A renewal brings another year of new versions and support.
  • Monthly subscription: every DbSchema version, for as long as the subscription is active.

Who uses it:

  • Regular is per person: each seat belongs to one user, by email.
  • Floating is per team: a shared pool of seats, used by as many people at the same time as you bought. See Floating licenses.

Register with your DbSchema account

Your DbSchema account is your email address. Signing in with it is the recommended way: there is no key to copy, and it works for regular and floating licenses alike.

  1. Choose Help → Register License.
  2. Choose DbSchema Account.
  3. Type your Email: the purchase email, or the email the license owner assigned to you in the Customer Area.
  4. Press Register. DbSchema emails you a code.
  5. Type the code in the Validation Code dialog.

DbSchema downloads the license assigned to your email and activates it. For a floating license, it takes a seat from the pool.

Register with a license key

Use a license key for an installation without a DbSchema account. PayProGlobal emails you the key after the purchase.

  1. Choose Help → Register License.
  2. Choose License Key.
  3. Type the Email used for the purchase, or the one assigned to you in the Customer Area.
  4. Paste the whole key, including its first and last ### lines. Load From File reads it from a file instead.
  5. Press Register. DbSchema activates the key online.
The Registration dialog with License Key chosen: the Email field, the empty box for the key, and Load From File

A license key can be active on 2 computers at a time.

Activate a computer without internet access

If DbSchema cannot reach the licensing server, the Activate DbSchema from another computer dialog opens.

  1. Copy the link that the dialog shows. The button next to it copies the whole link.
  2. Open the link on any computer with internet access. The page shows a 5-character code.
  3. Type the code into Response Code, and press OK.

Network access for activation

Registration connects to https://dbschema.com on port 443, and to no other host. Behind a company proxy, set the proxy in Edit → Settings → Network → Proxy, as Firewall, Proxy & SSH Tunnel explains.

Move a license to another computer

A key is active on at most two computers, so you free one before you register a third.

  1. On the computer you stop using, choose Help → Unregister License.
  2. Confirm with Unregister.
  3. Register the key on the new computer.

If the old computer was reformatted, replaced or lost, open a support ticket. We clear its activations, and you can register the key again.

Register with a floating license server

Some companies run their own floating license server on their network. The server lends a seat to each user who starts DbSchema.

  1. Choose Help → Register License.
  2. Choose Floating License Server.
  3. Type your Email and the Server URL, such as http://myhost:8080 or https://license.example.com.
  4. Press Register.
The Registration dialog with Floating License Server chosen, the email you@example.com and the Server URL http://myhost:8080

Run your own floating license server explains how to start the server.

Buy or renew a license

Choose Help → Purchase or Renew License. DbSchema opens a tab with the renewal of your current license, or with the purchase options when there is none to renew. The Purchase License button of the registration dialog buys a new license.

Which versions a license runs

A perpetual license runs every DbSchema version released within one year of the purchase. It keeps running those versions after the year ends. A renewal adds another year of new versions.

If you install a version released after that year, DbSchema shows License expired: Renew your license. The licensed features stay off until the license covers that version. The start window names your cutoff date: Your license covers every version released before …. You can:

  • renew the license, which keeps your license ID and your activations, or
  • install a version released before the cutoff date from Previous Releases, and register it with the same key.

A monthly subscription runs every version for as long as it is active.

Recently issued license keys need DbSchema 10.4.0 or later: an older version rejects them. Install the latest version from the download page to register a new or renewed key.

Manage licenses in the Customer Area

The Customer Area at /support/customer/ is where the license owner manages orders, keys and users. Sign in with your email: you receive a one-time login link. The Customer Area button in the registration dialog opens it too.

The dashboard lists your subscriptions. From there you download license keys and invoices, reassign licenses and manage users.

The Customer Area dashboard listing subscriptions

Reassign a regular license

Open Manage Users & Keys on a regular subscription, then the Assign Users tab. Each seat shows its email and the date it was assigned. The pencil changes it.

The Assign Users tab of the Customer Area, with one editable email per seat
  • When a regular license is generated, seat 1 is assigned to the owner's email, and the other seats start Unassigned.
  • A renewal or an upgrade keeps the assignments.
  • The person on a seat registers with their own assigned email, not the buyer's.
  • Only Commercial licenses can be reassigned.
  • An automatically assigned seat can be reassigned at any time. A seat you assigned by hand is locked for 3 months.

The Reassign link on the dashboard changes the license owner, for commercial orders.

Managing a team? Consider a Floating license

A regular license is per person: each seat belongs to one user. A floating license is per team: the whole team shares a pool of seats, up to the purchased number at the same time. If you reassign seats often, a floating license is usually the better fit.

Manage the users of a floating license

Open Manage Users & Keys on a floating subscription, then the Manage Users tab. Add or remove the emails allowed to use the license.

The Manage Users tab of the Customer Area, listing the users allowed to use a floating license
  • The list can be as long as you like. The purchased quantity limits only how many people use DbSchema at the same time.
  • Each allowed user registers with their own email, the one on the list.

Educational and class licenses

A teacher asks for a free class license with a support ticket sent from the school email address. The class license is renewed for each school year on request.

The teacher manages it like a floating license: add each student's email on the Manage Users tab. Each student then registers with DbSchema Account and the email the teacher added.

Floating licenses

A floating license lets a team share seats. As many people as you bought can work at the same time. A seat is taken when a user starts DbSchema and freed when they finish, so a larger team can share the seats across time zones.

There are two ways to run one. The DbSchema account is the recommended way.

Use a DbSchema account

With a DbSchema account there is no server to install.

  1. The license owner adds the users' emails in the Customer Area, on the Manage Users tab.
  2. Each user registers with Help → Register License → DbSchema Account and their own email. DbSchema leases a seat from the DbSchema licensing service.

A seat is freed when the user closes DbSchema or chooses Help → Unregister License. A running DbSchema keeps its seat: there is no timeout for inactivity. If DbSchema crashes or loses its network, the seat is freed once it stops contacting the server.

Run a floating license server

On a network with no direct internet access, run your own Floating License Server. Download the floating license key from the Customer Area (floating subscription → Download Key), then start the server one of the two ways below.

The server is DbSchemaCLI, which every DbSchema installation includes. It needs 1 vCPU and 512 MB of RAM, and no storage beyond the license key file. Clients reach it over plain HTTP on its port, 8080 by default.

The license itself needs no internet access. The server contacts https://dbschema.com only to download the H2 database driver on its first start if it is missing, and from time to time to check for a renewed license.

Run a server at least as new as the DbSchema clients. From version 10.4.1, DbSchema refuses an older server with This DbSchema version requires a newer version of the Floating License Server. So update the server before you roll out a new DbSchema version.

Run the server in Docker

Use the official image dbschema/dbschema-license-server. Mount the floating license key at /dbschema/license.txt and publish port 8080:

docker container run --rm   --volume "/path/to/license-file.txt:/dbschema/license.txt:ro"   --publish 8080:8080   dbschema/dbschema-license-server:latest

The same with Docker Compose:

services:
  dbschema-license-server:
    image: dbschema/dbschema-license-server:latest
    volumes:
      - "./DbSchemaLicense.txt:/dbschema/license.txt:ro"
    ports:
      - "8080:8080"

Behind a company proxy, pass the proxy as an environment variable: https_proxy, all_proxy or http_proxy, in the form http://host:port, with no_proxy for the hosts to reach directly. To trust a company certificate authority, set SSL_CERT_FILE or SSL_CERT_DIR and mount the certificate. The server logs the proxy and the certificates at startup, so docker logs shows whether it picked them up.

The server speaks plain HTTP. To serve it over HTTPS, put a reverse proxy in front of it and give the users the https:// address.

In Kubernetes, point the liveness and readiness probes at /live and /read, which answer 204 No Content:

livenessProbe:
  httpGet:
    path: /live
    port: 8080
readinessProbe:
  httpGet:
    path: /read
    port: 8080

Run the server with DbSchemaCLI

DbSchemaCLI can host the license server.

  1. Open a terminal and start DbSchemaCLI.
  2. Load the floating license from its file:
register -f "path/to/license-file"
  1. Start the server. It listens on port 8080 unless you give another port with -p:
license server -s -p 8080
  1. Watch the server, from the same DbSchemaCLI or another one:
    • license server -i shows the active users, out of the licensed number.
    • license server -l shows the server log.
    • -H <host> -p <port>, or -U <url>, queries a server on another machine.

To keep the server running, save the commands as a DbSchemaCLI script, such as license-server.txt:

register -f "path/to/license-file"
license server -s -p 8080
sleep

Run it with DbSchemaCLI license-server.txt at system startup, from Windows Task Scheduler or a Linux service. The server writes its log to .DbSchema/logs/logs.txt, in the home folder of the user that runs it.

Connect the clients

Each user registers with Help → Register License → Floating License Server, as above.

To fill in the Server URL for every user, set the environment variable DBSCHEMA_FLS_URL on their computers, such as DBSCHEMA_FLS_URL=http://myhost:8080. The older pair DBSCHEMA_FLS_HOST and DBSCHEMA_FLS_PORT still works, for plain HTTP. The variables only fill in the address: each user still registers once.

DbSchema reaches the license server through the proxy set in Edit → Settings → Network → Proxy. If that proxy cannot reach your internal network, add the server to No proxy for, as Proxy bypass rules explains.

Get help with a license

Choose Help → Report a Bug to write to support from inside DbSchema. The report can carry a screenshot of the DbSchema window and its logs. For invoices and subscriptions, the Support page has the other ways to reach us.

The Technical Support dialog with a message about a license key, the reply email, and the screenshot and logs attached

Common problems

"This license key is already in use on 2 computers"

A key is active on at most two computers. Choose Help → Unregister License on one of them, then register again. If that computer is gone, open a support ticket, and we clear its activations.

"License expired: Renew your license"

The installed version came out after your license year. Renew the license, or install an earlier version, as Which versions a license runs explains.

"This license key text is incomplete"

Copy the key from the email again, and paste all of it, including the first and last ### lines.

The Floating License Server does not start: "Address already in use"

Another program uses the port. Start the server on another port with -p, and give the clients that port.

"The Floating License Server did not grant a license"

Either every seat is in use, or the address is not the license server. Run license server -i to see the active users. If the address opens a web server's 404 page in a browser, another program answers there.

"This DbSchema version requires a newer version of the Floating License Server"

Update the server to at least the version of the clients.

The client cannot reach the license server

On the client computer, open http://<server>:8080/live in a browser. The server answers with an empty page (status 204). If it does not, check the server address, the firewall between the computers, and the DbSchema proxy settings. The client log is under Help → Output Logs.

Next steps