> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cockroachlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Visualize CockroachDB Schemas with DBeaver

The [DBeaver database tool][dbeaver] is a tool that completely integrates with CockroachDB to provide a GUI for managing your database.

According to the [DBeaver website][dbeaver]:

> DBeaver is a cross-platform Database GUI tool for developers, SQL programmers, database administrators, and analysts.

In this tutorial, you'll work through the process of using DBeaver with a secure CockroachDB cluster.

> [!TIP]
>
> For more information about using DBeaver, see the [DBeaver documentation](https://dbeaver.io/docs/).

If you run into problems, please file an issue on the [DBeaver issue tracker](https://github.com/dbeaver/dbeaver/issues).

For information on using DBeaver with CockroachDB Cloud, see [this blog post](https://paul-logston.medium.com/setting-up-a-sql-gui-with-cockroachdb-a9fd5fe15d9d).

## Before you begin

To work through this tutorial, take the following steps:

* [Install CockroachDB](https://docs.cockroachlabs.com/docs/v24.2/install-cockroachdb-mac) and [start a secure cluster](https://docs.cockroachlabs.com/docs/v24.2/secure-a-cluster).
* Download a copy of [DBeaver](https://dbeaver.io/download/) version 5.2.3 or greater.

## Step 1. Start DBeaver and connect to CockroachDB

1. Start DBeaver, and select **Database > New Connection** from the menu. In the dialog that appears, select **CockroachDB** from the list.

   ![DBeaver - Select CockroachDB](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-01-select-cockroachdb.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=b8a3150c75e483244566fd43c34ea1fc)

2. Click **Next**. The **Connection Settings** dialog displays.

3. In the **Database** field, enter `movr`.

   ![DBeaver - CockroachDB connection settings](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-02-cockroachdb-connection-settings.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=07a301468221967136090a1abd92677a)

## Step 2. Update the connection settings

1. Click the **SSL** tab.

   ![DBeaver - SSL tab](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-03-ssl-tab.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=4bef312fa5760245eb65ca5945915bda)

2. Check the **Use SSL** checkbox as shown, and fill in the text areas as follows:
   * **Root certificate**: Use the `ca.crt` file you generated for your secure cluster.
   * **SSL certificate**: Use a client certificate generated from your cluster's root certificate. For the root user, this will be named `client.root.crt`. For additional security, you may want to create a new database user and client certificate just for use with DBeaver.
   * **SSL certificate key**: Because DBeaver is a Java application, you will need to transform your key file to the `*.pk8` format using an [OpenSSL command](https://wiki.openssl.org/index.php/Command_Line_Utilities#pkcs8_.2F_pkcs5) like the one shown in the following snippet. Once you have created the file, enter its location here. In this example, the filename is `client.root.pk8`.

     ```console theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
     $ openssl pkcs8 -topk8 -inform PEM -outform DER -in client.root.key -out client.root.pk8 -nocrypt
     ```

3. Select **verify-ca** or **verify-full** from the **SSL mode** dropdown. There is no need to set the **SSL Factory**; you can let DBeaver use the default.

## Step 3. Test the connection settings

1. Click **Test Connection ...**. If you need a driver, the following dialog displays:

   ![DBeaver - download driver dialog](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-06-download-driver.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=00b52d8f63e39e63630d848ecd6f67c4)

2. Click **Download**.

   After the driver downloads, if the connection was successful, you will see a **Connected** dialog.

   ![DBeaver - connection success dialog](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-04-connection-success-dialog.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=f59354ed143b0878bbf30260fbad9d69)

3. Click **OK** to dismiss the dialog.

## Step 4. Start using DBeaver

Expand the **movr** database node and navigate to the **rides** table.

![DBeaver - CockroachDB with the movr database](https://mintcdn.com/cockroachlabs/Vnu3Mn2DzHS7Vfry/images/common/dbeaver-05-movr.png?fit=max\&auto=format\&n=Vnu3Mn2DzHS7Vfry\&q=85\&s=e6ca01a4edd5b32a8315b92c780ab503)

For more information about using DBeaver, see the [DBeaver documentation](https://dbeaver.io/docs/).

## Report issues with DBeaver & CockroachDB

If you run into problems, please file an issue on the [DBeaver issue tracker](https://github.com/dbeaver/dbeaver/issues), including the following details about the environment where you encountered the issue:

* CockroachDB version ([`cockroach version`](https://docs.cockroachlabs.com/docs/v24.2/cockroach-version))
* DBeaver version
* Operating system
* Steps to reproduce the behavior
* If possible, a trace of the SQL statements sent to CockroachDB while the error is being reproduced using [SQL query logging](https://docs.cockroachlabs.com/docs/v24.2/logging-use-cases#sql_exec).

## See also

* [DBeaver documentation](https://dbeaver.io/docs/)
* [DBeaver issue tracker](https://github.com/dbeaver/dbeaver/issues)
* [Client connection parameters](https://docs.cockroachlabs.com/docs/v24.2/connection-parameters)
* [Third-Party Database Tools](https://docs.cockroachlabs.com/docs/v24.2/third-party-database-tools)
* [Learn CockroachDB SQL](https://docs.cockroachlabs.com/docs/v24.2/learn-cockroachdb-sql)

[dbeaver]: https://dbeaver.io
