![Yum 依赖项可用但未标记为安装](https://linux22.com/image/681619/Yum%20%E4%BE%9D%E8%B5%96%E9%A1%B9%E5%8F%AF%E7%94%A8%E4%BD%86%E6%9C%AA%E6%A0%87%E8%AE%B0%E4%B8%BA%E5%AE%89%E8%A3%85.png)
我正在尝试安装特定版本的 MySQL:mysql-community-server-5.6.29-2.el6
在 RedHat 6.6 上。
当我运行时yum install
,出现依赖性错误,但依赖关系显然存在。我不确定该如何进行。
看起来好像有什么东西在请求MySQL-community-libs-5.7.11-1.el6
,但我不知道如何强制它不这样做。
有用的输出:
[root@cl-mgr01 ~]# yum install mysql-community-server-5.6.29-2.el6
## truncated for brevity ##
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-server.x86_64 0:5.6.29-2.el6 will be installed
--> Processing Dependency: mysql-community-common(x86-64) = 5.6.29-2.el6 for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Processing Dependency: mysql-community-client(x86-64) = 5.6.29-2.el6 for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Processing Dependency: libnuma.so.1(libnuma_1.2)(64bit) for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Processing Dependency: libnuma.so.1(libnuma_1.1)(64bit) for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Processing Dependency: libnuma.so.1()(64bit) for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Running transaction check
---> Package mysql-community-client.x86_64 0:5.6.29-2.el6 will be installed
--> Processing Dependency: mysql-community-libs(x86-64) = 5.6.29-2.el6 for package: mysql-community-client-5.6.29-2.el6.x86_64
---> Package mysql-community-common.x86_64 0:5.6.29-2.el6 will be installed
---> Package numactl.x86_64 0:2.0.9-2.el6 will be installed
--> Running transaction check
---> Package mysql-community-libs.x86_64 0:5.6.29-2.el6 will be obsoleting
---> Package mysql-libs.x86_64 0:5.1.73-3.el6_5 will be obsoleted
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: 2:postfix-2.6.6-6.el6_5.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: 2:postfix-2.6.6-6.el6_5.x86_64
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Running transaction check
---> Package mysql-community-libs.x86_64 0:5.7.11-1.el6 will be obsoleting
--> Processing Dependency: mysql-community-common(x86-64) = 5.7.11-1.el6 for package: mysql-community-libs-5.7.11-1.el6.x86_64
---> Package mysql-community-libs-compat.x86_64 0:5.7.11-1.el6 will be obsoleting
--> Running transaction check
---> Package mysql-community-common.x86_64 0:5.6.29-2.el6 will be installed
--> Processing Dependency: mysql-community-common(x86-64) = 5.6.29-2.el6 for package: mysql-community-server-5.6.29-2.el6.x86_64
--> Processing Dependency: mysql-community-common(x86-64) = 5.6.29-2.el6 for package: mysql-community-libs-5.6.29-2.el6.x86_64
---> Package mysql-community-common.x86_64 0:5.7.11-1.el6 will be installed
--> Finished Dependency Resolution
Error: Package: mysql-community-server-5.6.29-2.el6.x86_64 (mysql)
Requires: mysql-community-common(x86-64) = 5.6.29-2.el6
...
Available: mysql-community-common-5.6.29-2.el6.x86_64 (mysql)
mysql-community-common(x86-64) = 5.6.29-2.el6
...
Installing: mysql-community-common-5.7.11-1.el6.x86_64 (mysql)
mysql-community-common(x86-64) = 5.7.11-1.el6
Error: Package: mysql-community-libs-5.6.29-2.el6.x86_64 (mysql)
Requires: mysql-community-common(x86-64) = 5.6.29-2.el6
...
Available: mysql-community-common-5.6.29-2.el6.x86_64 (mysql)
mysql-community-common(x86-64) = 5.6.29-2.el6
...
Installing: mysql-community-common-5.7.11-1.el6.x86_64 (mysql)
mysql-community-common(x86-64) = 5.7.11-1.el6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
其他有用的输出:
[root@cl-mgr01 ~]# rpm -qa | grep mysql
mysql-connector-java-5.1.17-6.el6.noarch
mysql-libs-5.1.73-3.el6_5.x86_64
答案1
请尝试以下操作:
# yum install --enablerepo=mysql56-community install mysql-community-server
Loaded plugins: fastestmirror, langpacks, nvidia
Loading mirror speeds from cached hostfile
* base: mirror.metrocast.net
* elrepo: mirror.symnds.com
* epel: mirror.metrocast.net
* extras: mirror.metrocast.net
* nux-dextop: mirror.li.nux.ro
* updates: mirror.solarvps.com
No package install available.
Package mysql-community-server-5.6.30-2.el7.x86_64 already installed and latest version
Nothing to do
#
...更好的是,使用yum-config-manager
,禁用mysql57-community
和启用mysql56-community
,然后安装mysql-community-server
。
# yum repolist | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community 21
mysql-tools-community/x86_64 MySQL Tools Community 33
mysql56-community/x86_64 MySQL 5.6 Community Server 229
# egrep '^(name|\[|enabled)' /etc/yum.repos.d/mysql-community.repo
[mysql-connectors-community]
name=MySQL Connectors Community
enabled=1
[mysql-tools-community]
name=MySQL Tools Community
enabled=1
[mysql55-community]
name=MySQL 5.5 Community Server
enabled=0
[mysql56-community]
name=MySQL 5.6 Community Server
enabled=1
[mysql57-community-dmr]
name=MySQL 5.7 Community Server Development Milestone Release
enabled=0
#
答案2
我最终要做的是:
- 使用 升级 MySQL-libs
yum update mysql-libs
,已安装mysql-community-libs
- 使用降级它们
yum downgrade mysql-libs
,以便它们处于 5.6.29 - 安装 mysql-community-server