Встраиваемая SQL-база данных на Rust, совместимая с диалектом SQL, форматом файлов и C API SQLite, с экспериментальным интерфейсом Postgres.
tursodatabase/libsql
Форк SQLite с открытым исходным кодом и открытым приёмом изменений, в котором появились встроенные реплики, удалённый режим сервера и расширения ядра SQLite.
- Звёзды
- 17,280
- Форки
- 547
- Открытые issues
- 466
- Последний коммит
- 5 дней назад
Что это?
libSQL — форк SQLite, который развивает Turso. Он сохраняет API и формат файлов SQLite, поэтому с ним можно использовать существующие базы данных и код SQLite, но при этом добавляет возможности для задач, для которых SQLite изначально не предназначалась.
Основные дополнения — встроенные реплики, которые хранят реплицированную копию базы данных внутри приложения, и libSQL server, обеспечивающий удалённый доступ к SQLite по аналогии с PostgreSQL или MySQL. В ядро также входят расширение ALTER TABLE для изменения типов столбцов и ограничений, пользовательские функции на WebAssembly, рандомизированные ROWID и интерфейс виртуального журнала упреждающей записи.
Проект принимает внешние изменения — сопровождающие считают это его главным отличием от upstream SQLite. Доступны драйверы для TypeScript/JavaScript, Rust, Go и других языков, а также совместимая с SQLite оболочка командной строки. В README отмечается, что новые функции разрабатываются в отдельном проекте Turso — переписанной на Rust версии.
Ключевые возможности
- 01Встроенные реплики, хранящие реплицированную базу данных внутри приложения
- 02libSQL server для удалённого доступа к SQLite
- 03Расширение ALTER TABLE для изменения типов столбцов и ограничений
- 04Пользовательские функции на WebAssembly
- 05Официальные драйверы для TypeScript/JavaScript, Rust и Go
Сценарии использования
- Использование совместимого с SQLite хранилища с удалённым доступом по сети
- Хранение локальной реплицированной копии базы данных внутри edge-приложения или клиентского приложения
- Добавление функций WebAssembly в приложения на базе SQLite
Быстрый старт
- 1
Соберите совместимую с SQLite библиотеку на C и инструменты
cargo xtask build - 2
Запустите оболочку SQL из каталога libsql-sqlite3
cd libsql-sqlite3 && ./libsql
Что важно знать
- Наследует модель SQLite с единственным писателем, поэтому не поддерживает параллельную запись.
- В README для новых проектов рекомендуется использовать Turso, поскольку новые функции разрабатываются там.
Темы
Частые вопросы
- Что такое libsql?
- Форк SQLite с открытым исходным кодом и открытым приёмом изменений, в котором появились встроенные реплики, удалённый режим сервера и расширения ядра SQLite. libSQL — форк SQLite, который развивает Turso. Он сохраняет API и формат файлов SQLite, поэтому с ним можно использовать существующие базы данных и код SQLite, но при этом добавляет возможности для задач, для которых SQLite изначально не предназначалась.
- libsql можно использовать бесплатно? Какая у него лицензия?
- libsql распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- libsql всё ещё поддерживается?
- Активно поддерживается. Последний коммит в libsql — 17 окт. 2026 г..
- Для чего можно использовать libsql?
- Использование совместимого с SQLite хранилища с удалённым доступом по сети Хранение локальной реплицированной копии базы данных внутри edge-приложения или клиентского приложения Добавление функций WebAssembly в приложения на базе SQLite
- Как установить libsql?
- Соберите совместимую с SQLite библиотеку на C и инструменты: cargo xtask build Запустите оболочку SQL из каталога libsql-sqlite3: cd libsql-sqlite3 && ./libsql
- Где скачать libsql?
- Исходный код и инструкции по установке — на GitHub: https://github.com/tursodatabase/libsql
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Безопасный и расширяемый ORM и конструктор запросов для Rust с проверкой запросов во время компиляции для PostgreSQL, MySQL, SQLite и MariaDB.
Графовая база данных с открытым исходным кодом на Rust: хранит графы, векторы и полнотекстовые данные в объектном хранилище и поддерживает запросы из Rust, TypeScript, Go и Python.
Мультимодельная база данных на Rust, объединяющая документы, графы, реляционные, временные ряды и данные «ключ—значение», с запросами в реальном времени и встроенным контролем доступа.
Бесплатный кроссплатформенный графический инструмент для создания, просмотра, редактирования и запросов к файлам баз данных SQLite без написания SQL.
Лёгкая отказоустойчивая распределённая реляционная база данных на SQLite с репликацией между узлами через консенсус Raft.