DbShell: Free Universal SQL Command-Line Client

DbShell is a command line client capable to connect to multiple databases, run queries on all of them, transfer data, execute scheduled tasks, monitor databases and send alert emails, execute SQL reports and send the results over ftp or email.

DbShell can be used with MySql, MariaDB, Sqlite, Snowflake, Redshift, Oracle, PostgreSQL, SqlServer, Db2, Google Big Query and Cloud Spanner, Informix, Hive, Salesforce, Firebird and more.

Download DbShell Documentation

One Command-Line Client for All Databases

Connect to Multiple Databases

With a single client you can connect to different databases, from different providers (PostgreSQL, MySql, SqlServer, Redshift, etc.). If same table resides on multiple databases, you can query all of them in the same time. Also, you can monitor multiple databases with a single command (like CPU load, disk usage, locking or replication).

Read More

Transfer Data Between Databases

DbShell can transfer data between different databases. Transfer the data from one database to another or from multiple databases to a single database. The transfer can use queries, parallel-processing and transactional chunks.

Read More

Python or Java Groovy Scripts

Some administrative tasks may require more logic then SQL. This can be done using Python or Java Groovy scripts. The scripts can be executed directly or can be saved into a separate file.

Read More

Implement Custom Commands

In our documentation, you will find examples for Postgres disk usage commands. This was written in Java Groovy and saved to a separate file. We have registered this as a DbShell command, which can be simply executed by connecting to multiple databases. Similarly, you can implement your commands for CPU load, locking, replication status.

Read More

Schedule Database Scripts

SQL, Python or Java Groovy scripts can be scheduled to run regularly, similar to linux crontab. If the scripts are failing, an email will be sent to the database administrators.

Read More

Deliver Data to End-User

DbShell can execute scripts and save the result data to the file. These files can be delivered to end-users via FTP or as an email attachment.

Read More

Script Error Reporting

DbShell can execute database reports and deliver data to end-users, like salespeople, managers, developers. If these scripts crash, for example, the database is down, or a table is missing, DbShell sends an alert email to database administrators.

Read More

Monitor Databases

You can write Python or Groovy scripts for monitoring databases, like disk usage, locking, CPU usage, number of connections, etc. These scripts can be registered as native DbShell commands. Then you can connect to multiple databases (connect to a group) and execute them on all databases. This will help to monitor database clusters using a single command.

Read More

Keep Passwords Safe

DbShell can make use of a separate file to save passwords.

Read More

Create New Connections From Exiting Connections

Database connections can be created by modifying existing connections. For example, you can add the suffix '.sby' to each connection, and set a rule to apply on the host or the port. Administrators are using this, for example, when they manage standby databases with a similar configuration as the primary databases.

Read More