---
title: Extension
description: How to install ParadeDB as an extension inside an existing self-managed Postgres
canonical: https://docs.paradedb.com/deploy/self-hosted/extension
---

<Note>
  We recommend running ParadeDB Enterprise, not Community, in production to
  maximize uptime. See [overview](/deploy/overview#self-hosted-paradedb).
</Note>

If you already self-manage Postgres, you may prefer to install ParadeDB directly within your self-managed
Postgres instead of deploying the ParadeDB Helm chart.

This can be done by installing the `pg_search` extension, which powers all of ParadeDB's custom functionalities.

## Prerequisites

Ensure that you have superuser access to the Postgres database.

As of `0.25.0`, `pg_search` relies on [`pgvector`](https://github.com/pgvector/pgvector)'s `vector` type, making it a required
extension. `pgvector` must be installed on the server before `pg_search` — see the [`pgvector` installation
instructions](https://github.com/pgvector/pgvector?tab=readme-ov-file#installation).

## Install the ParadeDB Postgres Extension

### ParadeDB Community

ParadeDB provides prebuilt binaries of our extension for Postgres 15+ on:

- Debian 12 (Bookworm) and 13 (Trixie)
- Ubuntu 24.04 (Noble) and 26.04 (Resolute)
- macOS 15 (Sequoia) and 26 (Tahoe)
- macOS via [Postgres.app](https://postgresapp.com/extensions/) (PostgreSQL 18)
- Red Hat Enterprise Linux 9 and 10

If you are using a different version of Postgres or a different operating system, you will need to build the extension from source.

#### pg_search

The prebuilt releases can be found in [GitHub Releases](https://github.com/paradedb/paradedb/releases).

<Note>
  You can replace `0.25.4` with the `pg_search` version you wish to install and
  `18` with the version of Postgres you are using.
</Note>

<CodeGroup>

```bash Ubuntu 26.04
# Available arch versions are amd64, arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/postgresql-18-pg-search_0.25.4-1PARADEDB-resolute_amd64.deb" -o /tmp/pg_search.deb
sudo apt-get install -y /tmp/*.deb
```

```bash Ubuntu 24.04
# Available arch versions are amd64, arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/postgresql-18-pg-search_0.25.4-1PARADEDB-noble_amd64.deb" -o /tmp/pg_search.deb
sudo apt-get install -y /tmp/*.deb
```

```bash Debian 13
# Available arch versions are amd64, arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/postgresql-18-pg-search_0.25.4-1PARADEDB-trixie_amd64.deb" -o /tmp/pg_search.deb
sudo apt-get install -y /tmp/*.deb
```

```bash Debian 12
# Available arch versions are amd64, arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/postgresql-18-pg-search_0.25.4-1PARADEDB-bookworm_amd64.deb" -o /tmp/pg_search.deb
sudo apt-get install -y /tmp/*.deb
```

```bash RHEL 10
# Available arch versions are x86_64, aarch64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/pg_search_18-0.25.4-1PARADEDB.el10.x86_64.rpm" -o /tmp/pg_search.rpm
sudo dnf install -y /tmp/*.rpm
```

```bash RHEL 9
# Available arch versions are x86_64, aarch64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/pg_search_18-0.25.4-1PARADEDB.el9.x86_64.rpm" -o /tmp/pg_search.rpm
sudo dnf install -y /tmp/*.rpm
```

```bash macOS 26 (Tahoe)
# Available arch version is arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/pg_search@18--0.25.4.arm64_tahoe.pkg" -o ~/Downloads/pg_search.pkg
sudo installer -pkg ~/Downloads/pg_search.pkg -target /
```

```bash macOS 15 (Sequoia)
# Available arch version is arm64
curl -L "https://github.com/paradedb/paradedb/releases/download/v0.25.4/pg_search@18--0.25.4.arm64_sequoia.pkg" -o ~/Downloads/pg_search.pkg
sudo installer -pkg ~/Downloads/pg_search.pkg -target /
```

</CodeGroup>

### ParadeDB Enterprise

If you are a [ParadeDB Enterprise](/deploy/enterprise) user, you should have received a copy of the enterprise binaries. Please [contact sales](mailto:sales@paradedb.com) for access.

## Update `postgresql.conf`

Next, add the extension(s) to `shared_preload_libraries` in `postgresql.conf`.

```ini
shared_preload_libraries = 'pg_search'
```

Reload the Postgres server for these changes to take effect.

## Load the Extension

Finally, connect to your Postgres database via your client of choice (e.g. `psql`) and run the following command:

```sql
CREATE EXTENSION pg_search CASCADE;
```

<Note>
  As of `0.25.0`, `pg_search` requires the
  [`pgvector`](https://github.com/pgvector/pgvector) extension because it relies
  on `pgvector`'s `vector` type. `CASCADE` runs `CREATE EXTENSION vector`
  automatically if it has not already been created. Without `CASCADE`, `CREATE
  EXTENSION pg_search` fails with `required extension "vector" is not
  installed`.
</Note>
