Skip to content

Team Edition Migrate

This article explains the key differences between single-user DBeaver products and DBeaver Team Edition, providing vital information for users considering or undergoing migration.

Problem Overview

DBeaver offers several editions such as Community, Lite, Enterprise, and Ultimate. These editions operate as desktop applications in a single-user environment. All configurations, database connections, SQL scripts, diagrams, and other related files are stored on the local machine.

While these single-user editions provide powerful tools for individual database management, they are not optimized for team collaboration. Sharing resources between multiple users via email, messengers, or disk shares can lead to inconvenience and the need for constant synchronization.

Using shared version control systems like Git is a potential solution, but this approach has its own challenges, particularly for non-programmers who might find Git concepts complex. Merge conflicts can sometimes disrupt the configuration.

On the security front, the single-user editions of DBeaver do not mandate authentication. This means that anyone who gains access to a computer can also access all saved configurations and sensitive data, such as database server credentials. Though workarounds like workspace master passwords or project-based passwords with configuration encryption exist, they can be cumbersome, especially in larger organizations.

Recognizing these challenges, DBeaver introduced the DBeaver Team Edition, tailored for multi-user collaboration.

DBeaver Team Edition

DBeaver Team Edition is a multi-user application designed for distributed team work. The solution comprises:

  • DBeaver Team Edition server (For deployment details, refer to Deployment)
  • DBeaver Team desktop clients (With functionality similar to classic DBeaver)
  • DBeaver Team web client (Comparable to CloudBeaver)

Important

DBeaver Team Edition requires users to deploy the server on their own infrastructure. It is not provided as a hosted solution or a Software as a Service (SaaS.md) offering.

This article does not discuss server installation and configuration. For that information, consult the links provided above. Instead, this document focuses on guiding users through the process of migrating their existing configurations to adapt to the multi-user environment.

Authentication

To utilize DBeaver Team Edition, each user is required to authenticate within the system. Various authentication methods can be configured by system administrators to suit organizational needs:

  • Username and Password
  • Microsoft Active Directory
  • Cloud provider authentication (AWS, Google, or Azure IAM)
  • Windows NTLM

The authentication dialog appears on the initial screen when launching the desktop client or accessing the web application.

Working in Desktop client

The DBeaver Team client is very similar to DBeaver Enterprise and DBeaver Ultimate in terms of user interface, editors, and views. However, there are key differences:

  • Database connections, SQL scripts, and other resources are stored on a remote server, fetched to the local machine on demand.
  • Saved database credentials reside in a secure storage area, specific to each user.
  • The database task scheduler initiates tasks on the remote server, not the local machine, limiting certain task types.
  • User interface varies slightly depending on user roles (see below).
  • Git integration is omitted from desktop clients as files are not saved on the local file system. Git Integration is available through the administration panel.
  • Quick file search functionality is not available in the DBeaver Team client.

Working in the Web client

The Web client is very similar to the classic CloudBeaver, with the following notable differences:

  • Team Edition supports projects, unlike classic CloudBeaver, which supports only a single global project.
  • The user interface varies based on user roles (see below).

Projects, Teams, and Roles in DBeaver Team Edition

In DBeaver Team Edition, the concept of projects is similar to that in classic desktop versions:

  • A project contains database connections, SQL scripts, datasets, and other resources.
  • Every user has access only to some projects (it is controlled by administrator).

A team functions as a user group, and users can belong to multiple teams. Access to projects can be granted either to a team or to individual users.

Roles serve as access levels for users, and each user can have only one role:

  • Administrator: Full access to all projects and system administration capabilities. An Administrator can add users, create projects, establish connections, and essentially oversee the entire platform. Administrators set access permissions and determine the scope of functionalities available to other user roles.
  • Developer: Can manage connections and resources within projects they have access to.
  • Manager: Can modify resources (like SQL scripts) within projects they are authorized to access.
  • Editor: Read-only access to connections and resources, but can modify data in accessible connections.
  • Viewer: Similar to Editor, but without the ability to edit database data.

Working with database credentials

In DBeaver Team Edition, users have the option to reuse the credentials used for logging in when connecting to databases. Unlike other products, in TE, credentials are entered at application startup. If you've authenticated through a Single Sign-On (SSO.md) system that's integrated with a cloud service, it can be leveraged to connect to many databases.

Database Tasks and Scheduling

In Team Edition, tasks scheduled are executed on the server, which differs from other DBeaver products. As a result, task outcomes are stored exclusively on the server, within a cloud storage solution like S3. To access these results on a local machine, you need to download them from the cloud storage.

Version Control

In Team Edition, Git integration is engineered for collaborative work:

  • Admin-Configured Credentials: Administrators establish Git credentials, which means all changes made by users are committed on behalf of the administrator-set user, not the individual users themselves.
  • Local repository absence: Unlike other DBeaver products, where both local and remote Git repositories exist, Team Edition only has a remote repository.

For further details on version control within DBeaver Team Edition, refer to the Git TE integration documentation. For Desktop DBeaver, see the Project team work documentation.