Berkeley DB
概要
Berkeley DBはカリフォルニア大バークレイ校で開発されたデータベースライブラリ。データベースと言っても RDBMS のように SQL が使用できたり関連モデルで設計されているわけではなく、ファイル上にインデックス付けされたデータ構造をプロシジャ形式のインターフェースを用いて検索、更新出来るライブラリ (Database Manager) です。現在は Oracle によってオープンソースとして管理されています。
ライブラリレベルでアプリケーションに組み込みが可能でありオーバーヘッドも少ないため RDBMS に比べて手軽でコンパクト、高速であるという利点があります。またこういった DBM の中でも Berkeley DB はトランザクションのサポートやオンラインレプリケーションが可能であるといった特徴もあります。
構成が大げさにならない事から Apache や Postfix などのオープンソースで広く使用されています。また Windows CE や VxWorks などの組み込み系や Java にも移植されています。
Solaris 10 でのインストール
Solaris 10 は Companion DVD から追加インストールすることが出来ます。
# cd /cdrom/cdrom0/Solaris_Software_Companion/Solaris_i386/Packages/
# pkgadd -d `pwd` SFWbdb
Berkeley DB を使用するアプリケーションをコンパイルする場合はライブラリパス、インクルードパスに /opt/sfw/lib, /opt/sfw/include を指定してください。また ld が libdb.so を見つけられるように /opt/sfw/lib をライブラリパスに追加します。
# crle -u -l /opt/sfw/lib
# crle -v
構成ファイル [バージョン 4]: /var/ld/ld.config
デフォルトライブラリパス (ELF): /lib:/usr/lib:/opt/sfw/lib
...
ソースビルドとインストール
最新版のソースは Oracle Berkeley DB のサイトからダウンロードしてください。ここでは例として db-4.6.21.tar.gz
で話を進めます。
ダウンロードしたファイルを解凍し、環境ごとの build ディレクトリに移動して configure, make を実行します。
# gzip -d db-4.6.21.tar.gz # tar xvf db-4.6.21.tar # cd db-4.6.21/build_unix # ../dist/configure # make # make install
これで実行環境に /usr/local/BerkeleyDB.4.6 に Berlekey DB がインストールされます。
アプリケーション実行時に検索対象とするには /usr/local/BerkeleyDB.X.X/lib を環境変数 LD_LIBRARY_PATH
に設定するか、あるいは /lib などにシンボリックリンクを作成してください。
# ln -s /usr/local/BerkeleyDB.4.6/lib/libdb-4.6.so /lib/libdb-4.6.so