Там всё, как и предполагал. Только навскидку, сейчас могу ошибиться чуть. Но не существенно.
Сначала нужен mysql, например 4.1.10a. Будем считать, что у нас два компа: сервер и сборочный. Если один, то совмещаем.
1) Останавливаем апач и mysql (service httpd stop, service mysqld stop)
2) Находим все mysql пакеты и связанные: rpm -qa | grep mysql
Сносим их. Там, скорее всего окажуться ещё пакет авторизации из mysql и перловый dbd. Если они вам ныжны, то с их главными пакетами необходимо просвести процедуру, аналогичную php.
3) Обновляем mysql: rpm -Uvh MySQL-server-4.1.10a-0.i386.rpm MySQL-shared-4.1.10a-0.i386.rpm MySQL-client-4.1.10a-0.i386.rpm
(На отладочный комп всё тоже самое, но ещё потребуется MySQL-devel-4.1.10a-0.i386.rpm)
!!! Пакет shared-compat не нужен. Кстати, пакет client тоже не обязателен, если у вас только сервер, без необходимости доступа с консоли.
4) Запускаем новый mysql: service mysql start
(обратите внимание, что служба теперь называется mysql, а не mysqld!)
5) Ищем пакет php. Нам вообще нужен php-mysql-4.3, но по понятным причинам такого src.rpm нет, поэтому берём просто php-4.3.<точно та версия, что установлена на сервере>.src.rpm
6) Пытаемся пересобрать его: rpmbuild --rebuild php-4.3.<точно та версия, что установлена на сервере>.src.rpm
Почти наверняка комп ругнётся, что у вас нехватает какого-то пакета. Всё, что попросит обязательно надо установить. Было бы неплохо, если бы у вас был уже установленный и настроенный yum... ;-)
Кстати, в случаях неудачных сборок, остаются временные файлы, в каталоге /var/tmp - потом можно почистить...
7) Когда сборка завершена, идём в /usr/src/BUILD/RPMS/i386 (кажется =), не помню точно). Там уже ждёт пачка .rpm'ок. Из них нам нужна _только_ php-mysql-4.3. Устанавливаем её на сервер.
8) Поскольку, Mysql 4 использует уникод, то для корректной работы, убедитесь, что у вас установлен пакет php-mbstring-4.3 соответствующей версии...
9) Запускаем apache: service httpd start
Всё. ;-)