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

Yum repo приоритеты и конфликты

На моем сервере CentOS 6.4 я использую MySQL 5.5.33, который я установил из remi репозиторий. Я решил обновить MySQL до версии 5.6.x через собственные репозитории MySQL yum:

После установки репозиториев у меня есть это как мой список репо:

# yum repolist enabled
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * Webmin: download.webmin.com
 * base: mirrors.xmission.com
 * epel: mirror.steadfast.net
 * extras: mirror.thelinuxfix.com
 * remi: remi.check-update.co.uk
 * updates: mirrors.xmission.com
repo id                                              repo name                                                                   status
Webmin                                               Webmin Distribution Neutral                                                    175
base                                                 CentOS-6 - Base                                                              6,367
epel                                                 Extra Packages for Enterprise Linux 6 - x86_64                              10,737
extras                                               CentOS-6 - Extras                                                               14
mysql-connectors-community                           MySQL Connectors Community                                                       6
mysql-tools-community                                MySQL Tools Community                                                            6
mysql56-community                                    MySQL 5.6 Community Server                                                      46
remi                                                 Les RPM de remi pour Enterprise Linux 6 - x86_64                             1,485
updates                                              CentOS-6 - Updates                                                             864
repolist: 19,700

Итак, репозиторий MySQL 5.6 установлен и включен. Теперь, если я попытаюсь проверить информацию об установленном MySQL, чтобы узнать, какая последняя версия доступна, я получаю следующее:

# yum info mysql
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * Webmin: download.webmin.com
 * base: mirrors.xmission.com
 * epel: mirror.steadfast.net
 * extras: mirror.thelinuxfix.com
 * remi: remi.check-update.co.uk
 * updates: mirrors.xmission.com
Installed Packages
Name        : mysql
Arch        : x86_64
Version     : 5.5.33
Release     : 1.el6.remi
Size        : 29 M
Repo        : installed
From repo   : remi
Summary     : MySQL clie.......

Available Packages
Name        : mysql
Arch        : x86_64
Version     : 5.5.37
Release     : 1.el6.remi
Size        : 5.8 M
Repo        : remi
Summary     : MySQL client progr....

Похоже, что yum все еще ищет последнюю версию в репозитории remi. Думаю, дело даже не в репозитории mysql56-community. Итак, теперь я пробую это:

# yum info mysql --disablerepo=\* --enablerepo=mysql56-community

Это ДОЛЖНО игнорировать все другие репозитории, кроме репозитория Mysql. Но я получаю:

# yum info mysql --disablerepo=\* --enablerepo=mysql56-community
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Installed Packages
Name        : mysql
Arch        : x86_64
Version     : 5.5.33
Release     : 1.el6.remi
Size        : 29 M
Repo        : installed
From repo   : remi
Summ......

Таким образом, он отображает только мою установленную версию и не сообщает, что доступны какие-либо другие более новые версии. Я ожидал увидеть версию 5.6.x, доступную в репозитории mysql56-community.

Что мне здесь не хватает? Здесь есть какой-то конфликт репо?

ОБНОВИТЬ:

# yum --disablerepo=\* --enablerepo='mysql*-community*' list available
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
mysql55-community                                                                                               | 2.5 kB     00:00     
mysql57-community-dmr                                                                                           | 2.5 kB     00:00     
Available Packages
mysql-community-client.x86_64                                          5.6.17-4.el6                                   mysql56-community
mysql-community-common.i686                                            5.6.17-4.el6                                   mysql56-community
mysql-community-common.x86_64                                          5.6.17-4.el6                                   mysql56-community
mysql-community-devel.i686                                             5.6.17-4.el6                                   mysql56-community
mysql-community-devel.x86_64                                           5.6.17-4.el6                                   mysql56-community
mysql-community-embedded.i686                                          5.6.17-4.el6                                   mysql56-community
mysql-community-embedded.x86_64                                        5.6.17-4.el6                                   mysql56-community
mysql-community-embedded-devel.i686                                    5.6.17-4.el6                                   mysql56-community
mysql-community-embedded-devel.x86_64                                  5.6.17-4.el6                                   mysql56-community
mysql-community-libs.i686                                              5.6.17-4.el6                                   mysql56-community
mysql-community-libs.x86_64                                            5.6.17-4.el6                                   mysql56-community
mysql-community-libs-compat.i686                                       5.6.17-4.el6                                   mysql56-community
mysql-community-libs-compat.x86_64                                     5.6.17-4.el6                                   mysql56-community
mysql-community-server.x86_64                                          5.6.17-4.el6                                   mysql56-community
mysql-community-test.x86_64                                            5.6.17-4.el6                                   mysql56-community
mysql-connector-odbc.x86_64                                     5.3.2-1.el6                                  mysql-connectors-community
mysql-connector-python.noarch                                   1.1.6-1.el6                                  mysql-connectors-community
mysql-utilities.noarch                                          1.3.6-1.el6                                  mysql-tools-community     
mysql-workbench-community.x86_64                                6.1.4-1.el6                                  mysql-tools-community 

Итак, доступны пакеты mysql-community- *, но нет пакетов, называемых просто mysql-server. Если я установлю эти mysql-community* пакеты, как это будет конфликтовать с mysql-server пакет, который я уже установил?

Два репозитория, remi и mysql56-community, нельзя использовать вместе, поскольку они используют несовместимые схемы именования пакетов. yum info mysql не будет отображать ничего из репозитория сообщества MySQL, потому что ни один из пакетов не назван mysql по новой схеме именования. Пытаться yum info mysql\* вместо.

Следовательно, вы не можете обновить MySQL напрямую из Remi в репозиторий сообщества MySQL. Вместо этого вам нужно следовать MySQL инструкция по замене стороннего дистрибутива MySQL, в частности, раздел «Неродные сторонние дистрибутивы». Это включает в себя удаление пакетов Remi, а затем установку пакетов сообщества MySQL под их новыми именами.

Если вам нужно сохранить репозиторий Remi для других пакетов, вы должны убедиться, что yum больше не будет использовать свои пакеты MySQL, добавив либо exclude=mysql* или соответствующий includepkgs строка к определению репо.

Они упакованы разными разработчиками и могут конфликтовать в том смысле, что предоставляют одни и те же файлы и т. Д., И, возможно, mysql rpm: s из официальных репозиториев не будет считать себя обновлением mysql rpm: s, установленного из remi.

Я думаю, выгрузите базы данных, удалите все mysql rpm: s из remi repo, отключите remi repo, yum очистите все, установите mysql из официальных репозиториев и импортируйте базы данных.

В предоставленной вами ссылке предлагается использовать "--enablerepo='mysql*-community*'"Я бы попробовал. Также вы можете редактировать .repo файлы в /etc/yum.repos.d/. В /etc/yum.repos.d/remi.repo удостовериться enabled=0установлен, а не один, чтобы выключить репо. Также для файла репозитория сообщества mysql убедитесь, что для параметра enabled установлено значение 1.