Назад | Перейти на главную страницу

Зависимость Yum доступна, но не отмечена для установки

Я пытаюсь установить конкретную версию 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

Попробуйте следующее:

# 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
# 

В итоге мне пришлось сделать следующее:

  • Обновите библиотеки MySQL с помощью yum update mysql-libs, который установил mysql-community-libs
  • Понизьте их, используя yum downgrade mysql-libs чтобы они были на 5.6.29
  • Установите mysql-community-server