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.What is not included
This build leaves out three of Percona’s features. MyRocks. The RocksDB storage engine is not built, soSHOW ENGINES does not
list ROCKSDB and no rocksdb_* system variable exists. A table that asks for
the engine fails:
component_keyring_file,
component_keyring_kms, and component_keyring_vault all ship and install.
component_keyring_kmip is not built, and installing it fails with
ERROR 1126.
Percona’s coredumper. The --coredumper option is still accepted, because
the server registers it whether or not the library is built, and the library is
not built here.
Percona’s other additions work normally, including the percona_udf component,
the audit log plugin, and the USER_STATISTICS and TABLE_STATISTICS views.
Identifying a Percona build
A Percona build reports a different codebase in its version string: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:villagesql-dev-server-percona-8.4_0.0.6-<os>-<arch>.tar.gz
files on the
0.0.6 release
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 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.
