Rust製のインプロセスSQLデータベース。SQLiteの方言、ファイル形式、C APIと互換性があり、実験的なPostgresフロントエンドも備えています。
tursodatabase/libsql
SQLiteをフォークした、オープンソースで外部からの貢献を受け入れるプロジェクト。組み込みレプリカ、リモートサーバーモード、SQLiteコアの拡張を追加します。
- スター
- 17,280
- フォーク
- 547
- 未解決の Issue
- 466
- 最終コミット
- 5 日前
これは何?
libSQLはTursoが保守するSQLiteのフォークです。SQLite APIとファイル形式を維持しているため、既存のSQLiteデータベースやコードをそのまま利用できる一方、SQLiteが当初想定していなかったユースケース向けの機能を追加しています。
主な追加機能は、データベースのレプリカをアプリケーション内に保持する組み込みレプリカと、PostgreSQLやMySQLに似た方法でSQLiteへのリモートアクセスを提供するlibSQL serverです。コアにはほかにも、列の型や制約を変更するALTER TABLE拡張、WebAssemblyユーザー定義関数、ランダム化されたROWID、仮想WALインターフェースが含まれています。
このプロジェクトでは外部からのコントリビューションを受け付けており、メンテナーはこれをupstreamのSQLiteとの主な違いとして位置付けています。TypeScript/JavaScript、Rust、Goなどのドライバーに加え、SQLite互換のコマンドラインシェルも用意されています。READMEによると、新機能の開発はTursoが別途進めているRustによる書き換え版で行われています。
主な機能
- 01アプリケーション内にデータベースのレプリカを保持する組み込みレプリカ
- 02SQLiteへのリモートアクセスを可能にするlibSQL server
- 03列の型や制約を変更するALTER TABLE拡張
- 04WebAssemblyユーザー定義関数
- 05TypeScript/JavaScript、Rust、Go向けの公式ドライバー
ユースケース
- ネットワーク経由のリモートアクセスに対応したSQLite互換ストレージの運用
- エッジアプリケーションやクライアントアプリケーション内にローカルのレプリカを保持
- SQLiteベースのアプリケーションにWebAssembly関数を追加
クイックスタート
- 1
SQLite互換のCライブラリとツールをビルドする
cargo xtask build - 2
libsql-sqlite3ディレクトリからSQLシェルを起動する
cd libsql-sqlite3 && ./libsql
使う前に知っておきたいこと
- SQLiteの単一ライターモデルを継承しているため、同時書き込みには対応していません。
- 新機能はTursoで開発されているため、READMEでは新規プロジェクトには代わりにTursoを使うことを推奨しています。
トピック
よくある質問
- libsql とは?
- SQLiteをフォークした、オープンソースで外部からの貢献を受け入れるプロジェクト。組み込みレプリカ、リモートサーバーモード、SQLiteコアの拡張を追加します。 libSQLはTursoが保守するSQLiteのフォークです。SQLite APIとファイル形式を維持しているため、既存のSQLiteデータベースやコードをそのまま利用できる一方、SQLiteが当初想定していなかったユースケース向けの機能を追加しています。
- libsql は無料で使えますか?ライセンスは?
- libsql は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- libsql は今もメンテナンスされていますか?
- 活発にメンテナンス中。libsql の最終コミットは 2026年10月17日 です。
- libsql は何に使えますか?
- ネットワーク経由のリモートアクセスに対応したSQLite互換ストレージの運用 エッジアプリケーションやクライアントアプリケーション内にローカルのレプリカを保持 SQLiteベースのアプリケーションにWebAssembly関数を追加
- libsql のインストール方法は?
- SQLite互換のCライブラリとツールをビルドする: cargo xtask build libsql-sqlite3ディレクトリからSQLシェルを起動する: cd libsql-sqlite3 && ./libsql
- libsql はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/tursodatabase/libsql
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
PostgreSQL、MySQL、SQLite、MariaDBに対応し、クエリをコンパイル時に検証できる、Rust向けの安全で拡張可能なORM兼クエリビルダーです。
Rust製のオープンソース・グラフデータベース。グラフ、ベクトル、全文検索用データをオブジェクトストレージにまとめて保存し、Rust、TypeScript、Go、Pythonからクエリできます。
ドキュメント、グラフ、リレーショナル、時系列、キー・バリューのデータと、リアルタイムクエリ、組み込みのアクセス制御を統合したRust製マルチモデルデータベース。
SQLを書かずにSQLiteデータベースファイルを作成、閲覧、編集、検索できる、無料のクロスプラットフォーム対応ビジュアルツールです。
Raft合意によりノード間で複製される、SQLiteベースの軽量で耐障害性に優れた分散リレーショナルデータベース。