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

Установка MySQl 5.5 на конфликте зависимостей CentOS 6

Вчера я установил mysql на свой centos 6, но я не знал, что он устанавливает mysql 5.1, который является устаревшей версией. Теперь я удалил старую версию и все ее зависимости, но когда я пытаюсь установить MySQL 5.5, yum сообщает, что есть проблемы из-за конфликта mysql-libs с новым.

[root@Pooya /]# yum --enablerepo=remi install mysql mysql-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.kiewel-online.ch
 * epel: kartolo.sby.datautama.net.id
 * extras: ftp.linux.org.tr
 * ius: download.srv.ro
 * remi: remi-mirror.dedipower.com
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.plusline.de
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mysql.x86_64 0:5.5.28-1.el6.remi will be installed
--> Processing Dependency: mysql-libs(x86-64) = 5.5.28-1.el6.remi for package: mysql-5.5.28-1.el6.remi.x86_64
---> Package mysql-server.x86_64 0:5.5.28-1.el6.remi will be installed
--> Processing Dependency: perl-DBD-MySQL for package: mysql-server-5.5.28-1.el6.remi.x86_64
--> Running transaction check
---> Package mysql-libs.x86_64 0:5.5.28-1.el6.remi will be installed
---> Package perl-DBD-MySQL.x86_64 0:4.013-3.el6 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Running transaction check
---> Package mysql51-libs.x86_64 0:5.1.66-1.ius.el5 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================================================================
 Package                                       Arch                                  Version                                           Repository                           Size
=================================================================================================================================================================================
Installing:
 mysql                                         x86_64                                5.5.28-1.el6.remi                                 remi                                5.7 M
 mysql-server                                  x86_64                                5.5.28-1.el6.remi                                 remi                                 10 M
Installing for dependencies:
 mysql-libs                                    x86_64                                5.5.28-1.el6.remi                                 remi                                771 k
 mysql51-libs                                  x86_64                                5.1.66-1.ius.el5                                  ius                                 1.7 M
 perl-DBD-MySQL                                x86_64                                4.013-3.el6                                       base                                134 k

Transaction Summary
=================================================================================================================================================================================

Как видите, загружаются обе библиотеки mysql для mysql 5.5 и 5.1! Как я могу это исправить?

У вас также установлено и включено репозиторий сообщества IUS. Отключите это репо, так как оно конфликтует с remi (и многими другими репозиториями).

Не думаю, что эту проблему нужно решать. У вас есть разные библиотеки, которые зависят от разных версий libmysqlclient.so, сервер БД может безопасно общаться с клиентами разных версий. В этом случае MySQL поставляется с некоторыми утилитами, написанными на perl, а библиотека MySQL для Perl построена на основе версии клиентской библиотеки 5.1 и никак не влияет на утилиты.

Проблема заключалась в конфликте репозиториев, в которых некоторые из них хранят более новую версию mySQL, а некоторые из них просто хранят свои старые, стабильные версии.

Я отключил эти репозитории и оставил только те, которые содержат последнюю стабильную версию MySQL, и проблема исправлена.

Спасибо за вашу помощь!

Если вы хотите установить MySql 5.5 на CentOS 6 и конфликты прав в mysql-libs, вам необходимо:

yum install yum-plugin-replace
wget https://mirror.webtatic.com/yum/el6/latest.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum install mysql.`uname -i` yum-plugin-replace
yum replace mysql --replace-with mysql55w
yum replace mysql-libs --replace-with mysql55w-libs
yum install mysql55w-server mysql55w
service mysqld start
mysql_secure_installation

Введите свой пароль и готово!