问题描述:
在日常运维工作发现执行如下的命令现实如下的报错:
[root@pro-slave-09 ~]# yum install -y telnet
错误:rpmdb: BDB0113 Thread/process 15746/140271062673472 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@pro-slave-09 ~]# telnet 10.36.6.165 3306
-bash: telnet: 未找到命令
[root@pro-slave-09 ~]# yum clean all
错误:rpmdb: BDB0113 Thread/process 15746/140271062673472 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@pro-slave-09 ~]# rpm -qa | grep telnet
错误:rpmdb: BDB0113 Thread/process 15746/140271062673472 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 打开软件包数据库
错误:rpmdb: BDB0113 Thread/process 15746/140271062673472 failed: BDB1507 Thread died in Berkeley DB library
错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
错误:无法从 /var/lib/rpm 打开软件包数据库
在互联网查询查询的解决方案如下:
问题解决:
[root@pro-slave-09 ~]# cd /var/lib/rpm
[root@pro-slave-09 rpm]# clear
[root@pro-slave-09 rpm]# ls | grep 'db.'
__db.001
__db.002
__db.003
[root@pro-slave-09 rpm]# for i in $(ls | grep 'db.');do mv $i $i.bak;done
[root@pro-slave-09 rpm]# ls | grep 'db.'
__db.001.bak
__db.002.bak
__db.003.bak
然后重新执行上门的命令:
[root@pro-slave-09 rpm]# rpm -qa | grep telnet
[root@pro-slave-09 rpm]# yum clean all
发现就不会再有报错了。
问题原因:
原因:rpm数据库损坏,重新重构就可以了。