home(h) links(l) memo(m) profile(r)
memo(m) qdbm

qdbm関係

index

インストール

1. ダウンロード

qdbmのホームページから最新版ソースバイナリ(2021/07/07現在 1.8.78)をダウンロード。

shell> wget https://dbmx.net/qdbm/qdbm-1.8.78.tar.gz
    

2-1. 通常ダウンロード

通常は、解凍、設定、コンパイル、インストールという一般的な手順でインストールOK。

shell> tar -zxvf qdbm-1.8.77.tar.gz
shell> ./configure
shell> make
shell> make check
shell> make install
    

2-2. RPMパッケージでインストール

ダウンロード先ディレクトリがバイナリソース置き場(/usr/src/redhat/SOURCES/)でなかった場合は移動。

[user@server ~]# mv qdbm-1.8.77.tar.gz /usr/src/redhat/SOURCES/
[user@server ~]# cd /usr/src/redhat/SOURCES/
    

talballの中にrpm仕様書(specファイル)のひな形(qdbm.spec.in)があるが、内容が古く修正が必要(Copyright→Licenseの修正など)。本体に加えてC++, java, cgiに関するモジュールも合わせてインストールする内容となっているが、Java部分でrpmパッケージ作成にこけるところが直せなかったのでとりあえずJava部分を外したspecファイルを作ってrpmをビルド。

[user@server SOURCES]# cd ../SPECS
(qdbm.specを書く、またはダウンロード)
[user@server SPECS]# rpmbuild -ba qdbm.spec
上記specファイルでビルドすると、5つのパッケージができる(本体、debug-info、devel、cgi、plus)
    

yumでインストールするならrpmパッケージに署名(→rpmパッケージへ署名する方法参照。

[user@server SPECS]# cd ~ ←.rpmmacro がユーザホームディレクトリにある場合
[user@server ~]# rpm --resign /usr/src/redhat/RPMS/i386/qdbm* ←"i386"はアーキテクチャによって変わる
[user@server ~]# yum localinstall /usr/src/redhat/RPMS/qdbm*
(中略)
Dependencies Resolved

================================================================================
 Package          Arch     Version      Repository                         Size
================================================================================
Installing:
 qdbm             x86_64   1.8.77-1     /qdbm-1.8.77-1.x86_64             730 k
 qdbm-cgi         x86_64   1.8.77-1     /qdbm-cgi-1.8.77-1.x86_64         101 k
 qdbm-debuginfo   x86_64   1.8.77-1     /qdbm-debuginfo-1.8.77-1.x86_64    55 k
 qdbm-devel       x86_64   1.8.77-1     /qdbm-devel-1.8.77-1.x86_64       1.1 M
 qdbm-plus        x86_64   1.8.77-1     /qdbm-plus-1.8.77-1.x86_64        1.1 M

Transaction Summary
================================================================================
Install      5 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total size: 3.1 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : qdbm                                                     1/5 
  Installing     : qdbm-plus                                                2/5 
  Installing     : qdbm-debuginfo                                           3/5 
  Installing     : qdbm-cgi                                                 4/5 
  Installing     : qdbm-devel                                               5/5 

Installed:
  qdbm.x86_64 0:1.8.77-1                   qdbm-cgi.x86_64 0:1.8.77-1          
  qdbm-debuginfo.x86_64 0:1.8.77-1         qdbm-devel.x86_64 0:1.8.77-1        
  qdbm-plus.x86_64 0:1.8.77-1             

Complete!
    

yumを使わずrpmコマンドでインストールするなら署名はなくてもOK。

rpm -ivh qdbm*rpm
    

コマンド

QDBMをインストールすると、QDBMをコマンドラインから制御するためのプログラムdpmgrも合わせてインストールされる。利用方法は以下の通り。QDBM基本仕様書も参照のこと。

【書式】
全レコードを1行1組、キーと値はタブで区切って出力
dpmgr list データベースファイル名
壊れたデータベースファイルを修復する
dpmgr repair データベースファイル名