Я пытаюсь установить расширение php.
--> Running transaction check
---> Package mysql.x86_64 0:5.5.18-1.el5.art set to be updated
---> Package mysql-devel.x86_64 0:5.5.18-1.el5.art set to be updated
---> Package mysql-server.x86_64 0:5.5.18-1.el5.art set to be updated
--> Processing Conflict: mysql50 conflicts MySQL
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package mysql50.x86_64 0:5.0.92-1.ius.el5 set to be updated
--> Processing Conflict: mysql50 conflicts MySQL
--> Finished Dependency Resolution
mysql50-5.0.92-1.ius.el5.x86_64 from ius has depsolving problems
--> mysql50 conflicts with mysql
Error: mysql50 conflicts with mysql
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
Как действовать?
Похоже, вы используете старую версию MySQL, а в стороннем репозитории yum есть более новая версия. Также похоже, что ваш php-модуль может быть получен из стороннего репозитория и зависит от новой версии MySQL.
У вас есть несколько вариантов.
Обновите MySQL, удалив пакет mysql50 и установив пакет mysql. Вы должны сначала сделать резервную копию ваших баз данных, если это сервер базы данных.
Найдите другое репо для вашего модуля php, в котором нет пакетов mysql.
Удалите это стороннее репо. Загрузите модуль php из репозитория и установите его с помощью команды rpm или поместите в собственное локальное репозиторий yum.
Скомпилируйте этот модуль php из исходного кода с включенной версией mysql.
Есть несколько способов использовать репозитории IUS.
Один из них - удалить пакеты RHEL.
http://iuscommunity.org/Docs/GettingStarted
Пакеты IUS заменяют стандартные пакеты RHEL, однако они не устаревают. Это означает, что вы не можете просто «yum upgrade» и получить наши пакеты… вам нужно сначала удалить стандартный пакет RHEL, такой как mysql, и заменить его пакетом IUS, таким как mysql51. См. Руководство по использованию клиента для получения полных примеров установки программного обеспечения от IUS.
Другой - использовать пакет дополнения Replace
http://iuscommunity.org/Doc/ClientUsageGuide
Конфликтующие пакеты замены: почти все пакеты IUS будут конфликтовать. Это означает, что пакеты, которые они заменяют, должны быть сначала удалены перед установкой версии IUS. Например: mysql50 и mysql51 конфликтуют с mysql. Они предоставляют mysql, но не устаревают, поэтому простая подписка на репозитории IUS Yum не приведет к автоматическому обновлению чего-либо. Если вы попытаетесь установить пакеты mysql5X из IUS, вы получите ошибки Yum. Тем не менее, как только вы удалите исходные пакеты (mysql, mysql-server, mysql-devel и т. Д.) И установите их аналоги IUS, все будет работать так же.
Я рекомендую второй вариант и обязательно сделайте резервную копию всех данных перед изменениями.