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

Установка зависимостей PHP

При попытке установить пакет php-mysql я получаю следующую ошибку. Он отлично работал с версией php-5.1.6-27.el5 и mysql 5.0. После обновления MySQL на некоторых страницах PHP были проблемы, и мне пришлось перейти на PHP 5.3, но это не решило проблему.

# yum install php-mysql  --skip-broken
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-mysql.x86_64 0:5.3.2-3 set to be updated
--> Processing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: php-mysql
--> Processing Dependency: libmysqlclient.so.15()(64bit) for package: php-mysql
--> Running transaction check
---> Package mysql.x86_64 0:5.0.77-4.el5_4.2 set to be updated
--> Processing Conflict: mysql conflicts MySQL
--> Finished Dependency Resolution
mysql-5.0.77-4.el5_4.2.x86_64 from base has depsolving problems
  --> mysql conflicts with MySQL-server
--> Running transaction check
---> Package mysql.x86_64 0:5.0.77-4.el5_4.2 set to be updated
--> Processing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: php-mysql
--> Processing Dependency: libmysqlclient.so.15()(64bit) for package: php-mysql
--> Finished Dependency Resolution
php-mysql-5.3.2-3.x86_64 from base has depsolving problems
  --> Missing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) is needed by package php-mysql-5.3.2-3.x86_64 (base)
php-mysql-5.3.2-3.x86_64 from base has depsolving problems
  --> Missing Dependency: libmysqlclient.so.15()(64bit) is needed by package php-mysql-5.3.2-3.x86_64 (base)

Packages skipped because of dependency problems:
    mysql-5.0.77-4.el5_4.2.x86_64 from base
    php-mysql-5.3.2-3.x86_64 from base

Какие шаги необходимы для завершения этого процесса установки?

Использование репозиториев, таких как webtactic, должно быть крайней мерой. Обычно они выполняются одним человеком, и даже если предположить, что с пакетом нет других проблем, если этот человек будет занят другими задачами, вы легко можете стать уязвимыми для атаки, которая не исправлена. CentOS / RHEL 5.6 добавил php53 в качестве официального пакета наряду с существующей версией php.

Перед добавлением новой версии вам нужно будет удалить существующие файлы php. У меня были проблемы с тем, что не все было доступно для php53, поэтому сначала проверьте, что установлено. Затем сравните это с тем, что есть в наличии.

Проверяем, что установлено:

rpm -qa | grep php*

Проверьте, что есть в наличии:

yum search php53

Если все, что вы установили для php, доступно в версии php53, удалите все, что у вас есть, а затем переустановите новые версии.

Удалять:

yum remove php*

Установите новые версии:

yum install php53 php53-devel php53-mysql ...

Мне как системному администратору эти версии были бы НАМНОГО удобнее. Хотя я должен признать, что им не хватает некоторых плагинов, таких как APC.

Какие репозитории у вас включены? Попробуйте отключить все репозитории, кроме базового / стандартного.

Я прошел через это только вчера и отсортировал его (в 32-битной системе) только после запуска

yum --enablerepo=webtatic update php*

Если у вас его нет, файл webtatic.repo содержит

[webtatic]
name=Webtatic Repository $releasever - $basearch
baseurl=http://repo.webtatic.com/yum/centos/$releasever/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andy