6.13. Berkeley DB-4.4.20

Das Paket Berkeley DB enthält Programme und Werkzeuge, die von vielen Anwendungen für Datenbankbezogene Funktionen verwendet werden.

Geschätzte Kompilierzeit: 1.2 SBU
Ungefähr benötigter Festplattenplatz: 77 MB
[Tipp]

Weitere Installationsmöglichkeiten

Das BLFS-Buch enthält eine Anleitung zur Installation dieses Pakets, falls Sie einen RPC-Server oder andere Sprachbindungen benötigen. Die zusätzlichen Sprachbindungen setzen weitere Pakete voraus. Weitere Informationen dazu finden Sie unter http://www.linuxfromscratch.org/blfs/view/svn/server/databases.html#db.

Außerdem kann man anstelle von Berkeley DB auch GDBM installieren und somit die Voraussetzung für Man-DB schaffen. Allerdings sind viele Stunden in den LFS-Test von Berkeley geflossen, nicht jedoch in GDBM. Wenn Sie sich dem Risiko voll bewusst sind, und dennoch GDBM einsetzen möchten, dann schauen Sie sich die Anleitungen unter http://www.linuxfromscratch.org/blfs/view/svn/general/gdbm.html an.

6.13.1. Installation von Berkeley DB

Patchen Sie das Paket, um ein paar mögliche Fallstricke zu umgehen:

patch -Np1 -i ../db-4.4.20-fixes-1.patch

Bereiten Sie Berkeley DB zum Kompilieren vor:

cd build_unix &&
../dist/configure --prefix=/usr --enable-compat185 --enable-cxx

Die Bedeutung der configure-Parameter:

--enable-compat185

Dieser Parameter schaltet die Berkeley DB 1.85 Kompatibilitäts-API ein.

--enable-cxx

Dieser Parameter schaltet den Bau der C++-API-Bibliotheken ein.

Kompilieren Sie das Paket:

make

Es ist nicht möglich, dieses Paket sinnvoll zu testen, weil dafür die TCL-Bindungen voraussetzt. Die TCL-Bindungen können allerdings nicht korrekt kompiliert werden, weil TCL gegen die Glibc in /tools gelinkt ist und nicht die in /usr.

Installieren Sie das Paket:

make docdir=/usr/share/doc/db-4.4.20 install

Die Bedeutung des make-Parameters:

docdir=...

Diese Variable gibt den korrekten Speicherort für die Dokumentation an.

Korrigieren Sie den Besitzer der installierten Dateien:

chown -v root:root /usr/bin/db_* \
    /usr/lib/libdb* /usr/include/db* &&
chown -Rv root:root /usr/share/doc/db-4.4.20

6.13.2. Inhalt von Berkeley DB

Installierte Programme: db_archive, db_checkpoint, db_deadlock, db_dump, db_hotbackup, db_load, db_printlog, db_recover, db_stat, db_upgrade und db_verify
Installierte Bibliotheken: libdb.{so,ar} und libdb_cxx.r{o,ar}

Kurze Beschreibungen

db_archive

Gibt die Pfade zu Protokolldateien aus, die nicht mehr benutzt werden.

db_checkpoint

Ein Daemon zum Überwachen von Protokolldateien und Kontrollpunkten darin.

db_deadlock

Ein Daemon zum Unterbrechen von Sperrungen, falls eine ununterbrechbare Sperrung (deadlock) gefunden wird.

db_dump

Wandelt eine Datenbankdatei in eine reines Textdatei um, so dass sie von db_load gelesen werden kann.

db_hotbackup

Erzeugt Schnappschüsse einer Berkeley DB Datenbank zum Zweck eines „Online-Backup“ oder „Online-Failover“.

db_load

Wird zum Erzeugen einer Datenbank-Datei aus einer reinen Text-Datei verwendet.

db_printlog

Wandelt eine Protokolldatei einer Datenbank in ein von Menschen lesbares Format um.

db_recover

Stellt eine Datenbank nach einem Fehler wieder in einem konsistenten Zustand her.

db_stat

Zeigt Statistiken zu Berkeley Datenbanken an.

db_upgrade

Wird zum Aktualisieren von Datenbank-Dateien auf eine neuere Berkeley DB-Version verwendet.

db_verify

Wird zum Durchführen von Konsistenzprüfungen von Datenbank-Dateien verwendet.

libdb.{so,a}

Enthält Funktionen zum Manipulieren von Datenbank-Dateien aus C-Programmen heraus.

libdb_cxx.{so,a}

Enthält Funktionen zum Manipulieren von Datenbank-Dateien aus C++-Programmen heraus.