> ## Documentation Index
> Fetch the complete documentation index at: https://villagesql.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Percona Build

> VillageSQL built on Percona Server for MySQL 8.4.

VillageSQL also builds on **Percona Server**, a source-compatible fork of
MySQL that adds its own storage, performance, and observability features.

## What this is

A VillageSQL server built against the Percona 8.4 codebase instead of upstream
MySQL 8.4. The VillageSQL Extension Framework, its SQL commands, and its
extensions work the same way on both — a Percona build is a different
foundation underneath the same VillageSQL surface.

VillageSQL does not document Percona's own features. For anything about
Percona Server itself — its storage engines, tuning options, or configuration
— see [Percona's own documentation](https://docs.percona.com/percona-server/8.4/).

## Identifying a Percona build

A Percona build reports a different codebase in its version string:

```sql theme={null}
SELECT @@villagesql_server_version;
-- Example output: percona-8.4_0.0.6
```

See [System Reference](/docs/mysql-8.4/stable/reference#villagesql_server_version) for
what this variable means. VillageSQL refuses to upgrade a datadir from one
codebase (for example `mysql-8.4`) onto a server running a different one (for
example `percona-8.4`).

## Installing

The Percona build ships alongside the MySQL 8.4 build, and all three install
methods offer it.

**Install script.** Answer **Percona 8.4** at the first question, or name it
outright where there is no terminal:

```bash theme={null}
curl -fsSL https://install.villagesql.com | \
  VSQL_CODEBASE=percona-8.4 INSTALL_METHOD=prebuilt bash
```

**Docker.** Images are published for each codebase and architecture:

```bash theme={null}
docker run -d --name vsql -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -p 3306:3306 villagesql/server:percona-8.4_0.0.6-$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/')
```

**Release download.** The `villagesql-dev-server-percona-8.4_0.0.6-<os>-<arch>.tar.gz`
files on the
[0.0.6 release](https://github.com/villagesql/villagesql-server/releases/tag/release/0.0.6)
cover Linux on x86\_64 and aarch64, and macOS on arm64.

**Source.** Build the `percona-8.4` branch, or the `publish/percona-8.4_0.0.6`
tag for the exact code the release shipped — see
[Build from Source](/docs/mysql-8.4/stable/source) for the build steps themselves.

A data directory belongs to the codebase that created it. VillageSQL refuses to
open a `mysql-8.4` data directory with a `percona-8.4` server, so install this
build into its own directory rather than pointing it at an existing one.
