Freedom251 › Embedded Databases
LMDB

What LMDB is
LMDB is a free embedded key-value data store developed for the OpenLDAP Project. Memory-mapped files provide disk persistence while delivering read performance comparable to an in-memory database, with zero-copy lookup and iteration through the operating-system buffer cache. The object code is about 32KB, and sorted keys make range lookups straightforward. LMDB provides ACID transactions with MVCC, reader and writer transactions, and serialized writes without deadlocks. Readers do not block writers, writers do not block readers, and multiple processes can open one environment on a host. Multiple sub-databases can share transactions. It needs no separate process, cleanup worker, compaction, application cache, logs, or crash-recovery procedure. Utilities include mdb_stat and mdb_copy, with API documentation. LMDB supports Windows and POSIX systems such as Linux and macOS, plus languages including C, C++, Perl, Python, and PHP. Symas describes the OpenLDAP license as basically BSD-style.
Who it suits
It suits developers needing a compact, embedded key-value store on Windows, Linux, macOS, or other POSIX systems. Its transaction and concurrency model fits applications requiring persistent local data without a separate database service.
What it does well
- Free embedded key-value database
- About 32KB of object code
- ACID transactions with MVCC
- Readers and writers do not block each other
- Requires no external process or crash-recovery procedure
What to know first
- No data synchronization
- Uses a key-value, NoSQL query model
- Encryption is listed but implementation details are not provided
- Professional support is fixed-price
Limits
The free plan covers LMDB itself. Source-level Gold and Enterprise support are separate fixed-price offerings, and their prices are not provided.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Enterprise | fixed-price · source-level support · LMDB organizations | On request |
| Gold | fixed-price · source-level support · LMDB organizations | On request |
As symas.com lists them, read 1 Oct 2026. The maker's own page has the final word.
Getting started
- Open the LMDB website
- Use the development repository in the OpenLDAP Project or its GitHub clone
- Build or integrate LMDB on Windows, Linux, macOS or another POSIX-compatible system
- Connect through a supported language such as C, C++, Perl, Python or PHP
Verdict
LMDB emphasizes compact deployment, persistence, and concurrent transactions with minimal maintenance. It is a focused key-value store rather than a synchronized database service.
Questions
Is LMDB free?
Yes. LMDB has a free plan and is under the OpenLDAP license, which Symas describes as basically BSD-style.
Which platforms does LMDB support?
It supports Windows and POSIX-compatible systems, including Linux and macOS. It is also listed for self-hosted and web use.
What database model does LMDB use?
LMDB is an embedded key-value database with a NoSQL query interface.
Does LMDB provide encryption or synchronization?
Encryption is listed as supported. Data synchronization is listed as unsupported.
Which languages and integrations are reported?
Symas reports support for C, C++, Perl, Python, PHP and other languages, plus integrations including OpenDKIM, Heimdal Kerberos, Postfix, Cyrus SASL, MemcacheDB, SQLite3 and Riak.
Facts from LMDB's own pages
- Code size
- LMDB is about 32KB of object code. · symas.com, 1 Oct 2026
- Concurrency
- Readers do not block writers, writers do not block readers, and multiple processes can open the same environment on one host. · symas.com, 1 Oct 2026
- Data model
- Keys are always sorted, making range lookups straightforward and efficient. · symas.com, 1 Oct 2026
- Headquarters
- Grand Junction, Colorado, USA · symas.com, 28 Sept 2026
- Integrations
- Symas reports integrations with OpenDKIM, Heimdal Kerberos, Postfix, Cyrus SASL, MemcacheDB, SQLite3, and Riak. · symas.com, 1 Oct 2026
- Language support
- Symas reports support for C, C++, Perl, Python, PHP, and other programming languages. · symas.com, 1 Oct 2026
- License
- Symas states that LMDB is part of OpenLDAP and is under the OpenLDAP license, basically a BSD-style license. · symas.com, 1 Oct 2026
- Maintenance
- LMDB requires no external process, background cleanup, compaction, application-level cache, logs, or crash-recovery procedure. · symas.com, 1 Oct 2026
- Persistence
- Memory-mapped files provide read performance comparable to an in-memory database while retaining disk persistence. · symas.com, 1 Oct 2026
- Purpose
- LMDB is an ultra-fast, ultra-compact, crash-proof key-value embedded data store developed for the OpenLDAP Project. · symas.com, 1 Oct 2026
- Source availability
- Development occurs in the OpenLDAP Project git repository and a clone is available on GitHub. · symas.com, 1 Oct 2026
- Sub-databases
- LMDB supports multiple sub-databases with transactions covering all sub-databases in an environment. · symas.com, 1 Oct 2026
- Support
- Symas offers fixed-price Gold or Enterprise source-level support and porting or professional services for LMDB users. · symas.com, 1 Oct 2026
- Transactions
- LMDB provides full ACID semantics with MVCC, reader/writer transactions, and deadlock-free serialized writes. · symas.com, 1 Oct 2026
- Utilities
- LMDB includes mdb_stat for database status, mdb_copy for complete backups, and complete API documentation. · symas.com, 1 Oct 2026
- Zero-copy access
- LMDB uses memory-mapped files for zero-copy lookup and iteration and uses the operating system buffer cache. · symas.com, 1 Oct 2026
Where LMDB stands on Freedom251
- Embedded Databases#12 of 30