6.15. Berkeley DB-4.7.25

Berkeley DB 包含一些程序和工具,供其他的一些程序来在做数据库相关函数时调用。

预计编译时间: 1.9 SBU
所需磁盘空间: 120 MB
[提示]

其他安装的可能性

如果你需要建立一个 RPC 服务器或者是附加语言绑定编译,在 BLFS 手册中有一些编译这个软件包的说明。附加语言的绑定编译还需要一些额外的软件包。参见 http://www.linuxfromscratch.org/blfs/view/svn/server/databases.html#db 的安装说明。

另外,GDBM 可以 被用来代替 Berkeley DB 来满足数据库需求。但是,因为在LFS构建过程中,Berkeley DB 被认为是一个核心部分,无法列出在 BLFS 手册中把它作为依赖的软件。同样,很多时候我们测试的是安装了 Berkeley DB 的 LFS 系统,而不是 GDBM。如果你清楚的了解了使用 GDBM 的风险和好处,仍然想要采用它,可以参考BLFS手册中的说明 http://www.linuxfromscratch.org/blfs/view/svn/general/gdbm.html

6.15.1. 安装 Berkeley DB

应用一个补丁以便复制的客户端可以打开一个序列:


patch -Np1 -i ../db-4.7.25-upstream_fixes-1.patch

为编译 Berkeley DB 做准备:


cd build_unix

../dist/configure --prefix=/usr --enable-compat185 --enable-cxx

配置选项的含义:

--enable-compat185

这个选项指定编译 Berkeley DB 1.85 向上兼容性 API。

--enable-cxx

这个选项指定编译 C++ API 库。

编译软件包:


make

现在测试软件包是没有意义的,因为这将会导致 TCL 捆绑编译。TCL不能被准确的编译,因为 TCL 还是链接到 /tools 下的 Glibc,而不是 /usr 目录下的Glibc。

安装软件包:


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

make 参数的含义:

docdir=...

这条安装命令将 db 的文档安装到正确的位置。

修改安装文件的归属:


chown -Rv root:root /usr/share/doc/db-4.7.25

6.15.2. Berkeley DB 的内容

安装的程序: db_archive, db_checkpoint, db_deadlock, db_dump, db_hotbackup, db_load, db_printlog, db_recover, db_stat, db_upgrade, and db_verify
安装的库: libdb.{so,ar}and libdb_cxx.r{o,ar}

简要描述

db_archive

打印出不再使用的日志文件路径名

db_checkpoint

监视和检查数据库日志的守护进程

db_deadlock

当死锁发生时,退出锁定要求

db_dump

把数据库文件转换成 db_load 能认出的文本文件

db_hotbackup

创建"hot backup"或者是"hot failover"的 Berkeley DB 数据库镜像。

db_load

从 plain-text 文件中创建出数据库文件

db_printlog

把数据库日志文件转换成人能读懂的文本

db_recover

在发生错误后,把数据库恢复到一致的状态

db_stat

显示数据库环境统计

db_upgrade

把数据库文件转换成新版本的 Berkley DB 格式

db_verify

对数据库文件进行一致性检查

libdb.{so,a}

包含 C 程序中可操作数据库文件的函数

libdb_cxx.{so,a}

包含 C++ 程序中可操作数据库文件的函数


Host by Alair