Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
LDB(3)			  System Administration	tools			LDB(3)

       ldb - A light-weight database library

       #include	<ldb.h>

       ldb is a	light weight embedded database library and API.	With a
       programming interface that is very similar to LDAP, ldb can store its
       data either in a	tdb(3) database	or in a	real LDAP database.

       When used with the tdb backend ldb does not require any database
       daemon. Instead,	ldb function calls are processed immediately by	the
       ldb library, which does IO directly on the database, while allowing
       multiple	readers/writers	using operating	system byte range locks. This
       leads to	an API with very low overheads,	often resulting	in speeds of
       more than 10x what can be achieved with a more traditional LDAP

       In a taxonomy of	databases ldb would sit	half way between key/value
       pair databases (such as berkley db or tdb) and a	full LDAP database.
       With a structured attribute oriented API	like LDAP and good indexing
       capabilities, ldb can be	used for quite sophisticated applications that
       need a light weight database, without the administrative	overhead of a
       full LDAP installation.

       Included	with ldb are a number of useful	command	line tools for
       manipulating a ldb database. These tools	are similar in style to	the
       equivalent ldap command line tools.

       In its default mode of operation	with a tdb backend, ldb	can also be
       seen as a "schema-less LDAP". By	default	ldb does not require a schema,
       which greatly reduces the complexity of getting started with ldb
       databases. As the complexity of you application grows you can take
       advantage of some of the	optional schema-like attributes	that ldb
       offers, or you can migrate to using the full LDAP api while keeping
       your exiting ldb	code.

       If you are new to ldb, then I suggest starting with the manual pages
       for ldbsearch(1)	and ldbedit(1),	and experimenting with a local
       database. Then I	suggest	you look at the	ldb_connect(3) and
       ldb_search(3) manual pages.

       o   ldbsearch(1)	- command line ldb search utility

       o   ldbedit(1) -	edit all or part of a ldb database using your
	   favourite editor

       o   ldbadd(1) - add records to a	ldb database using LDIF	formatted

       o   ldbdel(1) - delete records from a ldb database

       o   ldbmodify(1)	- modify records in a ldb database using LDIF
	   formatted input

       o   ldb_connect(3) - connect to a ldb backend

       o   ldb_search(3) - perform a database search

       o   ldb_add(3) -	add a record to	the database

       o   ldb_delete(3) - delete a record from	the database

       o   ldb_modify(3) - modify a record in the database

       o   ldb_errstring(3) - retrieve extended	error information from the
	   last	operation

       o   ldb_ldif_write(3) - write a LDIF formatted message

       o   ldb_ldif_write_file(3) - write a LDIF formatted message to a	file

       o   ldb_ldif_read(3) - read a LDIF formatted message

       o   ldb_ldif_read_free(3) - free	the result of a	ldb_ldif_read()

       o   ldb_ldif_read_file(3) - read	a LDIF message from a file

       o   ldb_ldif_read_string(3) - read a LDIF message from a	string

       o   ldb_msg_find_element(3) - find an element in	a ldb_message

       o   ldb_val_equal_exact(3) - compare two	ldb_val	structures

       o   ldb_msg_find_val(3) - find an element by value

       o   ldb_msg_add_empty(3)	- add an empty message element to a

       o   ldb_msg_add(3) - add	a non-empty message element to a ldb_message

       o   ldb_msg_element_compare(3) -	compare	two ldb_message_element

       o   ldb_msg_find_int(3) - return	an integer value from a	ldb_message

       o   ldb_msg_find_uint(3)	- return an unsigned integer value from	a

       o   ldb_msg_find_double(3) - return a double value from a ldb_message

       o   ldb_msg_find_string(3) - return a string value from a ldb_message

       o   ldb_set_alloc(3) - set the memory allocation	function to be used by

       o   ldb_set_debug(3) - set a debug handler to be	used by	ldb

       o   ldb_set_debug_stderr(3) - set a debug handler for stderr output

       ldb was written by Andrew Tridgell[1].

       If you wish to report a problem or make a suggestion then please	see
       the web site for current contact and maintainer

       ldb is released under the GNU Lesser General Public License version 2
       or later. Please	see the	file COPYING for license details.

	1. Andrew Tridgell

LDB 1.1				  12/11/2018				LDB(3)


Want to link to this manual page? Use this URL:

home | help