---
title: "YugabyteDB Clients"
url: "https://docs.yugabyte.com/stable/releases/yugabyte-clients/"
---

# YugabyteDB Clients

Use these shells to interact with YugabyteDB

Shells for interacting with, configuring, and managing YugabyteDB

YugabyteDB ships with command line interface (CLI) shells for interacting with each YugabyteDB API.

| Client                               | API                            | Description                                                                     |
|--------------------------------------|--------------------------------|---------------------------------------------------------------------------------|
| [ysqlsh](/stable/api/ysqlsh/ "ysqlsh") | [YSQL](/stable/api/ysql/ "YSQL") | SQL shell for interacting with YugabyteDB using PostgreSQL-compatible YSQL API. |
| [ycqlsh](/stable/api/ycqlsh/ "ycqlsh") | [YCQL](/stable/api/ycql/ "YCQL") | CQL shell for interacting with YugabyteDB using Cassandra-compatible YCQL API.  |

## Compatibility

Clients work best with servers of the same or an older major version. If you are running multiple versions of YugabyteDB, use the newest version of the client to connect. You can keep and use the matching version of a client to use with each version of YugabyteDB, but in practice, this shouldn't be necessary. For best results, use the latest client.

While the general functionality of running SQL statements and displaying query results should also work with servers of a newer major version, this cannot be guaranteed in all cases. In particular, due to the change from PostgreSQL 11 to 15 in YugabyteDB 2.25, use only the latest client to avoid compatibility issues.

## Installation

The YugabyteDB clients are installed with [YugabyteDB](/stable/releases/ybdb-releases/ "YugabyteDB") and located in the `bin` directory of the YugabyteDB home directory.

You can also install a standalone version using any of the following methods:

- x86
- ARM
- x86
- ARM
- Docker

```sh
curl -OL https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-darwin-x86_64.tar.gz
echo "$(curl -L https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-darwin-x86_64.tar.gz.sha) *yugabyte-client-2026.1.2.0-b137-darwin-x86_64.tar.gz" | shasum --check && \
tar xvfz yugabyte-client-2026.1.2.0-b137-darwin-x86_64.tar.gz
cd yugabyte-client-2026.1.2.0
```

```sh
curl -OL https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-darwin-arm64.tar.gz
echo "$(curl -L https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-darwin-arm64.tar.gz.sha) *yugabyte-client-2026.1.2.0-b137-darwin-arm64.tar.gz" | shasum --check && \
tar xvfz yugabyte-client-2026.1.2.0-b137-darwin-arm64.tar.gz
cd yugabyte-client-2026.1.2.0
```

```sh
wget https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-linux-x86_64.tar.gz
echo "$(curl -L https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-linux-x86_64.tar.gz.sha) *yugabyte-client-2026.1.2.0-b137-linux-x86_64.tar.gz" | shasum --check && \
tar xvfz yugabyte-client-2026.1.2.0-b137-linux-x86_64.tar.gz
cd yugabyte-client-2026.1.2.0
./bin/post_install.sh
```

```sh
wget https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-linux-aarch64.tar.gz
echo "$(curl -L https://downloads.yugabyte.com/releases/2026.1.2.0/yugabyte-client-2026.1.2.0-b137-linux-aarch64.tar.gz.sha) *yugabyte-client-2026.1.2.0-b137-linux-aarch64.tar.gz" | shasum --check && \
tar xvfz yugabyte-client-2026.1.2.0-b137-linux-aarch64.tar.gz
cd yugabyte-client-2026.1.2.0
./bin/post_install.sh
```

```sh
docker pull yugabytedb/yugabyte-client:latest
```

## Release notes

The YugabyteDB clients are released with every version of [YugabyteDB](/stable/releases/ybdb-releases/ "YugabyteDB"). Only versions with client-specific changes are listed.

### v2025.2.7.0 - November 5, 2026 (tentative)

- Updated ysqlsh to add support for replaying dumps that use the [`\restrict`](/stable/api/ysqlsh-meta-commands/#restrict-restrict "\restrict") meta-command.

### v2026.1.2.0 - September 21, 2026

- Updated ysqlsh to add support for replaying dumps that use the [`\restrict`](/stable/api/ysqlsh-meta-commands/#restrict-restrict "\restrict") meta-command.

### v2025.2.1.0 - February 12, 2025

- Updated ycqlsh Python compatibility. ycqlsh now requires Python 3 v3.6 or later.

### v2.25.0.0 - January 17, 2025

- Updated ysqlsh for PostgreSQL 15 compatibility.

### v2.23.0.0 - September 13, 2024

- Documents the limitations of retry logic when using `-c` flag in ysqlsh command. [#21804](https://github.com/yugabyte/yugabyte-db/issues/21804)
- Allows the deletion of the Cassandra role in ycqlsh without it regenerating upon cluster restart, by adding a flag to mark if the role was previously created. [#21057](https://github.com/yugabyte/yugabyte-db/issues/21057)

### v2024.1.1.0 - July 31, 2024

- Automated SQL/CQL Shell binary. Along with full binary, added separate downloadable SQL/CQL Shell binary.
