使用yum或者rpm安装包时出现问题,安装时报出大约如下错误:

rpmdb: Thread/process 35884/139793484506880 failed: Thread died in Berkeley DB library
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 -  (-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed

  这多半是因为rpm数据库出现损坏所致,此错误可能导致多数(甚至是所有的)rpm软件的升级、安装甚至是删除都会出现问题。

  解决办法如下:

   修复此错误,请以root身份在终端输入以下命令

   

   [root@www~]# cd /var/lib/rpm      # rpmdb所在目录
   [root@www rpm]# ls | grep 'db.'   # 列出相关rpmdb文件
   __db.001
   __db.002
   __db.003
   __db.004
   [root@www rpm]# for i in $(ls | grep 'db.');do mv $i $i.bak;done
   # 将原rpmdb文件都更名为结尾带.bak的文件
   或者
   [root@www rpm]# rm -f __db.*     # 清除原rpmdb文件
   [root@www rpm]# rpm --rebuilddb     # 重建rpm数据库
   [root@www rpm]# yum clean all     # 清除所有yum的缓存