Top Related Projects
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
A simple and lightweight SQL client desktop with cross database and platform support.
A lightweight client for managing MariaDB, MySQL, SQL Server, PostgreSQL, SQLite, Interbase and Firebird, written in Delphi
MySQL/MariaDB database management for macOS
Database manager for MySQL, PostgreSQL, SQL Server, MongoDB, SQLite and others. Runs under Windows, Linux, Mac or as web application
TablePlus macOS issue tracker
Quick Overview
DBeaver is a free, open-source universal database tool for developers and database administrators. It supports a wide range of databases, including MySQL, PostgreSQL, Oracle, SQL Server, and many others. DBeaver provides a user-friendly interface for database management, SQL development, and data analysis.
Pros
- Supports a vast array of database systems, both relational and NoSQL
- Offers a rich set of features, including ER diagrams, data export/import, and query execution plans
- Provides a consistent interface across different database types, reducing the learning curve
- Actively maintained with regular updates and improvements
Cons
- Can be resource-intensive, especially when working with large datasets
- Some advanced features may require a steeper learning curve for new users
- Occasional stability issues reported by some users, particularly with certain database connections
- Limited built-in support for version control integration
Getting Started
- Download DBeaver from the official website: https://dbeaver.io/download/
- Install the application following the instructions for your operating system
- Launch DBeaver and click on "New Database Connection" in the main toolbar
- Choose your database type from the list of supported databases
- Enter the connection details (host, port, username, password) for your database
- Test the connection and click "Finish" to create the connection
- Start exploring and managing your database through the DBeaver interface
Note: DBeaver is not a code library, so code examples are not applicable in this case.
Competitor Comparisons
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
Pros of Beekeeper Studio
- Modern, sleek user interface with a focus on simplicity and ease of use
- Built with Electron, offering cross-platform compatibility and a native-like experience
- Faster startup time and lower resource consumption for smaller databases
Cons of Beekeeper Studio
- Limited support for advanced database features and specialized SQL dialects
- Smaller community and fewer extensions compared to DBeaver
- Less comprehensive documentation and tutorials for complex operations
Code Comparison
Beekeeper Studio (Vue.js component):
<template>
<div class="query-editor">
<MonacoEditor
v-model="query"
language="sql"
@change="handleQueryChange"
/>
</div>
</template>
DBeaver (Java class):
public class SQLEditorBase extends TextEditorPart implements IDataSourceContainerProvider {
@Override
public void createPartControl(Composite parent) {
super.createPartControl(parent);
SQLEditorControl editorControl = new SQLEditorControl(parent, getSite());
}
}
Both projects aim to provide database management tools, but they differ in their approach and target audience. Beekeeper Studio focuses on simplicity and modern design, while DBeaver offers more comprehensive features for advanced users and enterprise environments.
A simple and lightweight SQL client desktop with cross database and platform support.
Pros of Sqlectron
- Lightweight and focused on simplicity, making it easier to use for basic SQL tasks
- Cross-platform support with a consistent interface across operating systems
- Open-source with an active community and regular updates
Cons of Sqlectron
- Limited database support compared to DBeaver's extensive list
- Fewer advanced features and customization options
- Smaller user base and community, potentially leading to slower issue resolution
Code Comparison
Sqlectron (JavaScript):
const createConnection = (server) => {
const driver = require(server.driver);
return driver.createConnection(server);
};
DBeaver (Java):
public class DriverDescriptor extends AbstractDescriptor {
private final Driver driver;
private final DBPDriver driverInstance;
public DriverDescriptor(IConfigurationElement config) {
super(config);
this.driver = loadDriver();
}
}
Both projects use different programming languages, reflecting their architectural choices. Sqlectron's JavaScript code emphasizes simplicity, while DBeaver's Java code demonstrates a more complex, object-oriented approach typical of larger-scale applications.
A lightweight client for managing MariaDB, MySQL, SQL Server, PostgreSQL, SQLite, Interbase and Firebird, written in Delphi
Pros of HeidiSQL
- Lightweight and faster startup compared to DBeaver
- Simpler interface, easier to navigate for beginners
- Built-in SSH tunnel support without additional plugins
Cons of HeidiSQL
- Limited database support (primarily MySQL, MariaDB, and Microsoft SQL Server)
- Fewer advanced features and customization options
- Windows-only, lacking cross-platform compatibility
Code Comparison
HeidiSQL (Pascal):
procedure TMainForm.FormCreate(Sender: TObject);
begin
InitializeMainForm;
LoadSettings;
SetupConnections;
end
DBeaver (Java):
public void createPartControl(Composite parent) {
super.createPartControl(parent);
createToolbar(parent);
createQueryEditor(parent);
createResultTabs(parent);
}
Both code snippets show part of the main form or window initialization process. HeidiSQL uses Pascal (Delphi) for its implementation, while DBeaver is written in Java. The DBeaver code appears more modular, with separate methods for creating different UI components.
MySQL/MariaDB database management for macOS
Pros of Sequel Pro
- Lightweight and fast, with a clean, intuitive interface
- Specifically designed for macOS, offering native performance and integration
- Free and open-source software
Cons of Sequel Pro
- Limited to MySQL databases only
- Development has slowed down, with less frequent updates
- Only available for macOS, lacking cross-platform support
Code Comparison
While both DBeaver and Sequel Pro are database management tools, their codebases differ significantly due to their scope and target platforms. Here's a brief comparison of how they handle database connections:
DBeaver (Java):
public class MySQLDataSource extends JDBCDataSource {
@Override
public DatabaseMetaData getMetaData(DBRProgressMonitor monitor)
throws DBException
{
return new MySQLDatabaseMetaData(this);
}
}
Sequel Pro (Objective-C):
- (void)connect
{
MYSQL *connection = mysql_init(NULL);
if (mysql_real_connect(connection, [host UTF8String], [user UTF8String], [password UTF8String], [database UTF8String], [port intValue], NULL, 0) == NULL) {
[self handleConnectionError:connection];
}
}
These snippets showcase the language differences and platform-specific approaches of each project.
Database manager for MySQL, PostgreSQL, SQL Server, MongoDB, SQLite and others. Runs under Windows, Linux, Mac or as web application
Pros of DBGate
- Lightweight and faster startup compared to DBeaver
- Web-based interface, allowing for easier remote access
- Built-in data analysis and visualization features
Cons of DBGate
- Smaller community and less extensive plugin ecosystem
- Limited support for advanced database administration tasks
- Fewer database drivers available out-of-the-box
Code Comparison
DBGate (JavaScript):
import _ from 'lodash';
import { Select } from 'dbgate-tools';
const select = new Select()
.from('users')
.where('age', '>', 18)
.orderBy('name');
const sql = select.toSql();
DBeaver (Java):
import org.jkiss.dbeaver.model.sql.SQLUtils;
import org.jkiss.dbeaver.model.sql.SQLQuery;
SQLQuery query = SQLUtils.makeQuery(
dataSource,
"SELECT * FROM users WHERE age > 18 ORDER BY name"
);
String sql = query.getText();
Both DBGate and DBeaver offer powerful database management capabilities, but they cater to different user needs. DBGate's web-based interface and built-in data analysis features make it attractive for quick, lightweight database operations and visualizations. DBeaver, on the other hand, provides a more comprehensive set of tools for advanced database administration and a wider range of supported databases, making it suitable for more complex enterprise environments.
TablePlus macOS issue tracker
Pros of TablePlus
- Sleek, modern user interface with a focus on simplicity and ease of use
- Native application for macOS and Windows, offering better performance and system integration
- Built-in support for multiple database types without requiring additional plugins
Cons of TablePlus
- Closed-source and paid software, limiting customization options and community contributions
- Limited cross-platform support compared to DBeaver (no Linux version)
- Fewer advanced features and extensibility options for power users
Code Comparison
While both DBeaver and TablePlus are primarily GUI tools, they offer different approaches to database management. Here's a brief comparison of how they handle SQL queries:
DBeaver:
SELECT * FROM users
WHERE age > 18
ORDER BY last_name ASC;
TablePlus:
SELECT * FROM users
WHERE age > 18
ORDER BY last_name ASC;
The SQL syntax is identical in both tools, but the execution and result presentation may differ. DBeaver offers more advanced query editing features, while TablePlus focuses on a streamlined, user-friendly interface for query execution and result visualization.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
DBeaver
Free multi-platform database tool for developers, SQL programmers, database administrators and analysts.
- Has a lot of features including schema editor, SQL editor, data editor, AI integration, ER diagrams, data export/import/migration, SQL execution plans, database administration tools, database dashboards, Spatial data viewer, proxy and SSH tunnelling, custom database drivers editor, etc.
- Out of the box supports more than 100 database drivers.
- Supports any database which has JDBC or ODBC driver (basically - almost all existing databases).
Download
You can download prebuilt binaries from official website or directly from GitHub releases.
You can also download Early Access version. We publish daily.
Running
Just run an installer (or unzip an archive) and run dbeaver
.
Note: DBeaver needs Java to run. OpenJDK 21 is included in all DBeaver distributions.
You can change default JDK version by replacing directory jre
in dbeaver installation folder.
Documentation
Architecture
- DBeaver is written on Java.
- Basic frameworks:
- OSGI platform for plugins and dependency management. Community version consists of 130+ plugins.
- Eclipse RCP platform for rich user interface build.
- JDBC for basic databases connectivity API.
- JSQLParser and Antlr4 for SQL grammar and semantic parser.
- For networking and additional functionality we use wide range of open source libraries such as SSHJ, JSch, Okhttp, OpenAI SDK, Apache POI, JFreeChart, JTS/GIS, etc.
- We separate model plugins from desktop UI plugins. This allows us to use the same set of "back-end" plugins in both DBeaver and CloudBeaver.
- Dependencies: being an OSGI application we use P2 repositories for third party dependencies. For additional Maven dependencies we use our own DBeaver P2 repo.
Supported databases
Community version
Out of the box DBeaver supports following database drivers: MySQL, MariaDB, Oracle, DB2, PostgreSQL, SQL Server, Sybase, Apache Hive, Drill, Presto, Trino, Phoenix, Exasol, Informix, Teradata, Vertica, Netezza, Firebird, Derby, H2, H2GIS, WMI, Snowflake, Greenplum, Redshift, Athena, SAP HANA, MaxDB, NuoDB, MS Access, SQLite, CSV, DBF, Firebird, TimescaleDB, Yellowbrick, CockroachDB, OrientDB, MonetDB, Google BigQuery, Google Spanner, Apache Hive/Impala/Spark, Apache Ignite, MapD, Azure SQL, CrateDB, Elasticsearch, Ocient, Ingres, OmniSci, Yugabyte, IRIS, Data Virtuality, Denodo, Virtuoso, Machbase, DuckDB, Babelfish, OceanBase, Salesforce, EnterpriseDB, Apache Druid, Apache Kylin, Databricks, OpenSearch, TiDB, TDEngine, Materialize, JDBCX, Dameng, Altibase, StarRocks, CUBRID, GaussDB, DolphinDB, LibSQL, GBase 8s, Databend, Cloudberry, Teiid, Kingbase.
PRO versions
Commercial versions extends functionality of many popular drivers and also support non-JDBC datasources such as:
MongoDB, Cassandra, Couchbase, CouchDB, Redis, InfluxDB, Firestore, BigTable, DynamoDB, Kafka KSQL, Neo4j, Neptune, Timestream.
Also, we support flat files as databases: CSV, XLSX, Json, XML, Parquet.
You can find the list of all databases supported in commercial versions here.
Feedback
- For bug reports and feature requests - please create a ticket.
- To promote a ticket to a higher priority - please vote for it with ð under the ticket description.
- If you have any questions, ideas, etc - please start a discussion.
- For bug reports and feature requests - please create a ticket.
- Pull requests are welcome. See our guide for contributors.
- Visit https://dbeaver.com for more information.
- Follow us on X and watch educational video on YouTube
- Thanks for using DBeaver! Star if you like it.
Contribution: help the Beaver!
Hooray, we have reached 40k+ stars on GitHub and continue to grow!
That's really cool, and we are glad that you like DBeaver.
- We are actively looking for new source code contributors. We have added labels âGood first issueâ and âHelp wantedâ to some tickets. If you want to be a part of our development team, just be brave and take a ticket. We are happy to reward our most active contributors every major sprint.
- You can buy one of our commercial versions. They include NoSQL databases support, additional extensions, and official online support. Also, licensed users have priorities in bug fixes and the development of new features.
Thank you!
- DBeaver Team (contributors)
CloudBeaver is a web-based database management tool built on the DBeaver platform. It brings the capabilities of DBeaver to the browser, enabling database management from any device with an internet connection and eliminating the need for local installation. Supporting any database, CloudBeaver incorporates most of DBeaver's features and includes advanced access management for secure collaboration. Designed with a user-friendly interface, CloudBeaver simplifies complex database operations and is suitable for both individual developers and organizations. Its scalable architecture accommodates various needs, making it a convenient solution for managing databases anytime and anywhere through web-based accessibility.
Top Related Projects
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
A simple and lightweight SQL client desktop with cross database and platform support.
A lightweight client for managing MariaDB, MySQL, SQL Server, PostgreSQL, SQLite, Interbase and Firebird, written in Delphi
MySQL/MariaDB database management for macOS
Database manager for MySQL, PostgreSQL, SQL Server, MongoDB, SQLite and others. Runs under Windows, Linux, Mac or as web application
TablePlus macOS issue tracker
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot