• Olá Visitante, se gosta do forum e pretende contribuir com um donativo para auxiliar nos encargos financeiros inerentes ao alojamento desta plataforma, pode encontrar mais informações sobre os várias formas disponíveis para o fazer no seguinte tópico: leia mais... O seu contributo é importante! Obrigado.

Instalar Mysql 5 e Php 5 no Fedora Core

maar3amt

Administrator
Team GForum
Entrou
Set 19, 2006
Mensagens
7,803
Gostos Recebidos
28
Recentemente um cliente precisou realizar uma atualização no seu servidor para atender as exigências de um sistema novo. A princípio a tarefa parecia ser simples, atualizar o Mysql e PHP para a versão 5 de ambos no Fedora Core 4.
Depois de pesquisar no google percebi que eu precisaria de um pouco mais do que “yum update && yum install mysql” para fazer as coisas funcionarem.

O primeiro passo foi obviamente fazer um dump de todos os bancos da versão corrente de modo a recriar os bancos caso necessário. Logo após parei o mysql e o desinstalei.

# mysqldump -A > /tmp/dump.sql (use as opções -p para senha e -u para usuário)

# /etc/init.d/mysql stop
# yum remove mysql

O próximo passo é baixar e compilar o RPM.SRC (pacote que contém o source do programa). A versão que utilizei foi a MySQL-5.0.24a-0.

# cd /tmp
# wget http://mysql.mirrors.ilisys.com.au/Downloads/MySQL-5.0/MySQL-5.0.24a-0.src.rpm
# rpmbuild –rebuild MySQL-5.0.24a-0.src.rpm

Antes de instalar a nova versão do Mysql é necessário lidar com alguns pacotes incompatíveis. Eles são:
  • php-mysql
  • perl-DBD-MySQL
  • mod_auth_mysql
  • MySQL-embedded
Com exceção do pacote php-mysql que será provido pela compilação do PHP posteriormente, os demais pacotes devem ser tratados individualmente caso seja necessária a instalação de algum deles. Os passos a serem tomados são semelhantes aos tomados na instalação do PHP.

# rpm -e php-mysql perl-DBD-MySQL mod_auth_mysql MySQL-embedded

Para listar os pacotes incompatíveis tente realizar a instalação com rpm -ivh MySQL-server-5.0.24a-0.glibc23.i386.rpm

# cd /usr/src/redhat/RPMS/i386/
# rpm -Uvh MySQL-shared-5.0.24a-0.glibc23.i386.rpm
# rpm -ivh MySQL-server-5.0.24a-0.glibc23.i386.rpm
# rpm -Uvh MySQL-client-5.0.24a-0.glibc23.i386.rpm
# rpm -Uvh MySQL-bench-5.0.24a-0.glibc23.i386.rpm

Baixe e instale o source do php. Será necessário editar o arquivo .spec para alterar uma dependência.

# wget # ftp://rpmfind.net/linux/fedora/core/updates/4/SRPMS/php-5.0.4-10.5.src.rpm
# rpm –install php-5.0.4-10.5.src.rpm# vi /usr/src/redhat/SPECS/php.spec

mysql-devel >= 4.1.0


Ao tentar executar a compilação do php é possível perceber que algumas dependências devem ser resolvidas antes. Alguns pacotes podem ser instalados com o yum, outros precisam ser instalados via rpm pois o yum se recusa a encontrá-los.
O primeiro pacote que não foi possível instalar com o yum foi o httpd-devel. O pacote de desenvolvimento e também as suas dependências podem ser encontradas também no rpmfind.

# cd /tmp# wget ftp://rpmfind.net/linux/fedora/core/updates/4/i386/httpd-devel-2.0.54-10.4.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/linux/core/updates/4/i386/pcre-devel-5.0-4.1.fc4.i386.rpm
# wget ftp://rpmfind.net/linux/pub/fedora/linux/core/updates/4/i386/apr-devel-0.9.6-3.5.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/apr-util-devel-0.9.6-2.i386.rpm
# rpm -ivh pcre-devel-5.0-4.1.fc4.i386.rpm
# rpm -ivh apr-devel-0.9.6-3.5.i386.rpm
# rpm -ivh apr-util-devel-0.9.6-2.i386.rpm
# rpm -ivh httpd-devel-2.0.54-10.4.i386.rpm


Outras dependências precisam ser resolvidas para compilar o PHP a menos que seu suporte seja removido no arquivo SPEC

# yum install postgresql
#wget ftp://rpmfind.net/linux/fedora/linux/core/updates/4/i386/postgresql-devel-8.0.8-1.FC4.1.i386.rpm
# rpm -ivh postgresql-devel-8.0.8-1.FC4.1.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/linux/core/updates/4/i386/unixODBC-devel-2.2.11-3.FC4.1.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/linux/core/updates/4/i386/unixODBC-2.2.11-3.FC4.1.i386.rpm
# rpm -ivh unixODBC-2.2.11-3.FC4.1.i386.rpm
# rpm -ivh unixODBC-devel-2.2.11-3.FC4.1.i386.rpm
# yum install net-snmp
# yum install net-snmp-devel
# rpm -ivh lm_sensors-2.9.1-3.FC4.2.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/dmidecode-2.6-1.14.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/beecrypt-devel-4.1.2-8.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/elfutils-devel-0.108-1.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/elfutils-libelf-devel-0.108-1.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/libxslt-devel-1.1.14-2.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/libgcrypt-devel-1.0-2.i386.rpm
# wget ftp://rpmfind.net/linux/fedora/core/4/i386/os/Fedora/RPMS/libgpg-error-devel-1.0-2.i386.rpm
# rpm -ivh dmidecode-2.6-1.14.i386.rpm
# rpm -ivh beecrypt-devel-4.1.2-8.i386.rpm
# rpm -ivh elfutils-devel-0.108-1.i386.rpm
# rpm -ivh elfutils-libelf-devel-0.108-1.i386.rpm
# rpm -ivh libxslt-devel-1.1.14-2.i386.rpm
# rpm -ivh libgcrypt-devel-1.0-2.i386.rpm
# rpm -ivh libgpg-error-devel-1.0-2.i386.rpm

Após instalar todos os pacotes necessários é possível compilar o PHP

# rpmbuild -bb /usr/src/redhat/SPECS/php.spec –nodeps

Após a compilação é possível instalar os pacotes do php gerados em /usr/src/redhat/RPMS/i386/ mas antes é necessário desinstalar os equivalentes da versão instalada.

# rpm -qa|grep -i php# rpm -e php-ldap
# rpm -e php-mysql# rpm -e php-pear –nodeps
# rpm -e php# rpm -ivh php-5.0.4-10.5.i386.rpm
# rpm -ivh php-pear-5.0.4-10.5.i386.rpm
# rpm -ivh php-mysql-5.0.4-10.5.i386.rpm

Fim das instalações. É possível que seja necessário editar o httpd.conf para alterar a referência da biblioteca do php, logo após reinicie o apache.

vi /etc/httpd/conf/httpd.conf

LoadModule php5_module modules/libphp5.soAddHandler php5-script .php

/etc/init.d/httpd restart
 
Última edição:
Topo