Introducing VillageSQL: A New Path for MySQL in the Agentic AI Era
MySQL is the world's most popular open-source database by many measures but a persistent innovation gap has emerged. This gap causes developers to select other databases over MySQL for new application development, particularly when AI is involved. Today, we are launching VillageSQL to close that gap and empower the MySQL community by enabling permissionless innovation via extensions. VillageSQL is the innovation platform for MySQL and is focused on giving MySQL a new path for the agentic AI era.
VillageSQL Server for MySQL is an open-source tracking fork that is a drop-in replacement for MySQL. It introduces an extension framework that includes custom data types and custom functions (with custom indexes coming soon). This extension framework unlocks rapid innovation for existing MySQL installations. It also allows developers building AI, agentic, and enterprise applications to choose MySQL without waiting for new features in future releases.
Ready to try it out? VillageSQL Server is now available in alpha.
The MySQL Innovation Gap
In recent years, much of the innovation and community development with open-source databases has focused on the PostgreSQL ecosystem. PostgreSQL development is governed by predictable community guidelines and the database supports a robust extension framework. An extension, framework like those found in many open-source projects such as PostgreSQL, Jenkins, or Grafana, enables developers to implement and publish new functionality to extend and modify the core of the project. Extensions don’t require broader agreement of the community before publishing. This is a powerful, permissive dynamic that unlocks the creativity of the community.
At the same time, gaps exist in MySQL’s functionality that have hindered its relevance with AI-era workloads. For example, there is no built-in implementation of vector search that retrieval augmented generation (RAG) use cases require. MySQL supports limited extensibility via plug-ins and components, but their limitations have hindered innovation in the MySQL ecosystem.
Introducing the Extension Framework for MySQL
We founded VillageSQL with the mission to empower the MySQL community by enabling permissionless innovation. VillageSQL Server is a tracking fork of MySQL. It is a drop-in replacement and supports adding new functionality through extensions. While MySQL supports, and has benefited from, a plugin architecture and a component framework, we believe extensions offer a more holistic and structured approach to extending the database. Installing extensions is simple and MySQL-idiomatic (or, what we call, “Myonic”).
We are launching a handful of extensions we thought were interesting. These extensions enable AI prompting via SQL functions, along with support for UUIDs, network addresses (IPv6/MAC), cryptographic functions, and a complex number data type. Our roadmap includes new AI features like vector indexing and optimized vector search. We’ve designed VillageSQL so developers can build and share their own extensions, and we can’t wait to see what the community builds next.
How it Works: "Myonic" Extensions
We define an extension in VillageSQL as a single packaging of extended types, indexes (coming soon), and functions that work together as a cohesive logical unit. Developers deploy these logical units as external repos or compiled dynamic libraries. A database administrator can copy the extension file into the VillageSQL extensions directory and run the SQL command ‘INSTALL EXTENSION_NAME’ to add the extension's functionality to the database engine.
# Install UUID extension
INSTALL EXTENSION 'vsql_uuid';
# Create a users table with UUID primary key
CREATE TABLE users (
id UUID PRIMARY KEY,
username VARCHAR(50),
email VARCHAR(255),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
This release is intended to provide developers with a preview for experimentation and feedback, not production workloads. For a look at where we are headed, including the path to a production-ready release, see the roadmap.
It Takes a Village
At VillageSQL, we believe in a community-driven approach. This means empowering and supporting contributors across developers and companies to allow self-directed implementations of extensions. Join the village today by writing and contributing extensions, reviewing documentation, submitting bugs, etc. on GitHub. Connect with us on Discord. Subscribe for updates over email here.
We are very excited to see where the MySQL community takes this project, but we already know “it takes a village” to be successful.
To get started or learn more, go to villagesql.com/.
Dominic Preuss (Village Steward/CEO) and Steve Schirripa (Village Architect/CTO) - Co-Founders