如何更新rpm / yum数据库?

例如,我已经安装了mysql和httpd,但是当我尝试“yum更新”时,yum会抛出包可用但未安装的错误。 那么,如何更新已安装软件的数据库呢?

这个命令不起作用:

rpm --rebuilddb 

如果您已经安装了包含来自软件包的文件但不同步的RPM数据库的系统,则可以使用rpm -ivh --justdb somepackage.rpm来更新RPM数据库,而无需实际安装任何内容。 但是,这很麻烦,而且当你处于这种状态时,是时候从头开始规划重新安装了。

你是如何安装httpd和mysql的? 这听起来像是通过源代码完成的,在这种情况下,您将无法使用存储库对其进行更新。

尝试这个

 yum clean all yum search mysql 

确保你的回购是加载有你想要的MySQL包

您不能手动更新rpmdb; 它必须通过包来完成。

这里肯定存在一个语言障碍问题 – 这篇文章的其余部分将假设你通过yum而不是来源安装了MySQL和Apache,然后yum更新破坏了你。

检查(和张贴)你的yum输出的其余部分。 如果软件包可用但不能安装,通常意味着它的一个依赖是错误的,如果你安装了一个软件包的i386和x86_64版本,并且你最终得到不同的版本,通常会发生这种情况。 一旦你得到你的依赖链清理,yum更新应该正常工作。