Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes b+tree, queue, extended linear hashing, fixed, and variable-length record access methods, transactions, locking, logging, shared memory caching, database recovery, and replication for highly available systems. DB supports C, C++, C#, Java, PHP, and Perl APIs. It supports key-value pair (NoSQL), SQL, and Java Object formatted data. It is available for a wide variety of Unix platforms as well as QNX, Android, Mac OS X, and several varieties of Windows.
| Tags | Database Database Engines/Servers |
|---|---|
| Licenses | Sleepycat License |
| Operating Systems | Windows Unix FreeBSD Solaris HP-UX Mac OS AIX Linux Android QNX Windriver |
| Implementation | C C++ Java Perl Python Tcl C# |


Release Notes: The first 5.3 release came out a few month ago. One of the main highlights was support for the Android platform. 5.3.21 is the second release. This is mainly a bugfix release, but it does include one feature which is potentially very interesting, support for Oracle JDK7.


Release Notes: New features include an online backup command for SQL, VACUUM (which does not require the database to be quiescent), encryption, BFILE, ADO.NET, iOS/iPhone/iPad support (in addition to existing support for Android), a new command line tool called "db_replicate" which will turn non-HA applications into HA/replicated applications with no new code, performance improvements, and lots of other features.


Release Notes: Increased Performance: improved concurrency for multi-threaded applications on SMP systems. A new db_sql tool: automatic generation of Berkeley DB application code from SQL for faster development and migration. New APIs: support for C#/.NET and the C++ Standard Template Library (STL).


Release Notes: The lock manager may now be partitioned, improving performance on some SMP and CMP systems. Optional pre-zero log files. Replications across different endian CPUs. Replication can manage the master node via leases. The Java/JNI API now supports the Direct Persistence Layer (DPL). failchk() and other methods related to post-process failure database cleanup have been improved.


Release Notes: Non-stop upgrades for replicated systems: customers can upgrade/patch the database without taking the entire system down. Multi-version concurrency control (MVCC) allows read transactions to proceed without being blocked by write transactions, therefore improving concurrency and performance. Replication framework is a pre-built, out of the box framework that makes it faster and easier for developers to build replicated apps.
30 May 2012 18:37
For those of you have been familiar with Berkeley DB over the years, it's worth mentioning that Berkeley DB now includes a SQL API in addition to the traditional k/v access methods. The SQL API is compatible with SQLite, meaning Berkeley DB can function as a drop-in replacement, usually with no code changes.
Recent versions of Berkeley DB support both iOS and Android platforms, as well as Java SE, SE Embedded, and OJEC.
11 Feb 2004 18:21
Re: Discussion Forum
> Is there any discussion forum specific
> to BerkeleyDB?
There is a Usenet newsgroup, comp.databases.berkeley-db, that was created recently.
19 Aug 2003 01:23
Discussion Forum
Is there any discussion forum specific to BerkeleyDB?
26 Jan 2002 17:39
Re: License
The SleepyCat license is very similar to the GPL and it is free as long as its used in a Free application. You only need to purchase a license from SleepyCat if it is to be used in a proprietary application. The SleepyCat license is also 100% GPL compatible, so it can be used in GPLed software..
See http://www.sleepycat.com/licensing.html (http://www.sleepycat.com/licensing.html) for details
19 Oct 2000 06:25
License
I don't think that "free for non-commercial use" is a very accurate description of the license in the Sleepycat Berkeley DB distribution. As far as i can tell, it is compliant with the Open Source definition (they certainly claim that it is).