标题:[实践OK]使用yum时rpmdb open failed解决方案,RPM数据库损坏的解决方法,重建立了rpm库里的记录。 出处:向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除 时间:Wed, 28 Sep 2016 11:05:56 +0000 作者:jackxiang 地址:http://jackxiang.com/post/8986/ 内容: [root@dhcp rpm]# rm __db.* -rf [root@dhcp rpm]# rpm --rebuilddb [root@dhcp rpm]# yum clean all 背景:安装软件包的时候,被我手动终止了,可能导致yum的数据库事务啥的存在问题: 问题描述: [root@iZ25dcp92ckZ sbin]# yum install mailx -y 错误:rpmdb: BDB0113 Thread/process 30438/140188047517696 failed: BDB1507 Thread died in Berkeley DB library 错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery 错误:无法使用 db5 - (-30973) 打开 Packages 索引 错误:无法从 /var/lib/rpm 打开软件包数据库 CRITICAL:yum.main: Error: rpmdb open failed [root@iZ25dcp92ckZ sbin]# yum clean all 错误:rpmdb: BDB0113 Thread/process 30438/140188047517696 failed: BDB1507 Thread died in Berkeley DB library 错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery 错误:无法使用 db5 - (-30973) 打开 Packages 索引 错误:无法从 /var/lib/rpm 打开软件包数据库 CRITICAL:yum.main: 1、前提条件:安装软件包的时候,被我手动终止了 [root@dhcp yum.repos.d]# yum clean all rpmdb: Thread/process 4541/140619363587840 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 [root@dhcp yum.repos.d]# yum makecache rpmdb: Thread/process 4541/140619363587840 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: 2、根据提示可以知道rpm数据库被损坏,如是按照下面的方法进行重建 [root@dhcp yum.repos.d]# cd /var/lib/rpm/ [root@dhcp rpm]# ls Basenames __db.004 Name Pubkeys Triggername Conflictname Dirnames Obsoletename Requirename __db.001 Filedigests Packages Requireversion __db.002 Group Providename Sha1header __db.003 Installtid Provideversion Sigmd5 [root@dhcp rpm]# rm __db.* -rf [root@dhcp rpm]# rpm --rebuilddb [root@dhcp rpm]# yum clean all Loaded plugins: aliases, changelog, downloadonly, kabi, presto, product-id, : refresh-packagekit, security, subscription-manager, tmprepo, : verify, versionlock Updating certificate-based repositories. Unable to read consumer identity Loading support for Red Hat kernel ABI Cleaning repos: rhel-source Cleaning up Everything 0 delta-package files removed, by presto [root@dhcp rpm]# yum update Loaded plugins: aliases, changelog, downloadonly, kabi, presto, product-id, : refresh-packagekit, security, subscription-manager, tmprepo, : verify, versionlock Updating certificate-based repositories. Unable to read consumer identity Loading support for Red Hat kernel ABI rhel-source | 4.0 kB 00:00 ... rhel-source/primary_db | 3.1 MB 00:00 ... Setting up Update Process No Packages marked for Update 来自:http://blog.sina.com.cn/s/blog_6fb8aaeb0101aegn.html Generated by Jackxiang's Bo-blog 2.1.1 Release