Install VillageSQL extensions to add custom types, functions, and capabilities to your database.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.
Command Syntax
Extensions are distributed as
.veb (VillageSQL Extension Bundle) files containing compiled libraries and metadata.Extension Naming Conventions
VillageSQL uses different naming conventions in different contexts:- SQL commands: Use underscores:
INSTALL EXTENSION vsql_uuid - Repository names: Use hyphens:
github.com/villagesql/vsql-uuid - File names: Use underscores:
vsql_uuid.veb - manifest.json: Use underscores to match SQL:
"name": "vsql_uuid"
Prerequisites
- Running VillageSQL Server instance
- Administrative access (root or equivalent)
Installing Built-in Extensions
Built-in extensions included with VillageSQL are already in the veb_dir. Simply enable them:Verify Installation
Test Functionality
Installing External Extensions
For extensions downloaded or built separately:Your server must have
veb_dir configured before you can install external extensions. See Configuring veb_dir.1. Copy the .veb File
Find your server’s extension directory, then copy the.veb file into it:
2. Install Extension
3. Verify Installation
Troubleshooting
| Issue | Solution |
|---|---|
Extension not found | Verify the .veb file is in veb_dir: SHOW VARIABLES LIKE 'veb_dir' |
Permission denied | Check file permissions: chmod 644 extension.veb |
extension name mismatch | Extension’s internal name doesn’t match the .veb filename. Rebuild the extension. |
vef_register not found | The .veb file doesn’t export a valid VEF entry point. Rebuild against the correct SDK. |
vef_register returned an error: ... | Extension registration failed. Read the appended message for details. |
Next Steps
Managing Extensions
Monitor and troubleshoot installed extensions
Available Extensions
Browse extensions you can install
Create Extensions
Build your own extensions

