琐碎笔记

解决 RPM 数据库损坏的问题

佩佩 · 6月19日 · 2020年 · · 本文共889个字 · 预计阅读3分钟 4927次已读

前言

最近在为刚开的一台VPS升级内核时,报了如下错误:

error: db5 error(-30969) from dbenv->open: BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch
error: cannot open Packages index using db5 - (-30969)
error: cannot open Packages database in /var/lib/rpm

内核升级文章

问题

[root@nange ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
error: db5 error(-30969) from dbenv->open: BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch
error: cannot open Packages index using db5 -  (-30969)
error: cannot open Packages database in /var/lib/rpm

分析

以上提示信息可知,由于强制结束了yum操作而导致rpm数据库被损坏了!

解决

  • 删除损坏的rpmdb文件
[root@nange ~]# rm /var/lib/rpm/__**
rm: remove regular file '/var/lib/rpm/__db.001'? y
rm: remove regular file '/var/lib/rpm/__db.002'? y
rm: remove regular file '/var/lib/rpm/__db.003'? y
  • 重建 rpm 数据库
[root@nange ~]# rpm --rebuilddb
  • 清除所有yum的缓存
[root@nange ~]# yum clean all
52 files removed

测试

[root@nange ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

什么也提示没有,说明恢复正常了。

结束

Enjoy it !

2 条回应
  1. 赶紧试试 2021-4-4 · 18:22

    赶紧试试

  2. 软软 2020-10-5 · 14:28

    马甲测试一下!