Php 5 mysql 5

De SME Server Wiki.

Comment installer PHP 5 et Mysql 5 sur SME

Attention tout d'abord SME est trés intime avec Mysql et PHP notament à cause:

  1. des templates
  2. des scripts de configuration automatique
  3. des scripts de applications intégrées

L'installation de php5 et mysql 5 est donc à vos risques et perils ! ce How to semble fonctionner, mais il se peut qu'une application ne le supporte pas => dans ce cas n'hesitez pas à le preciser sur cette page ou dans la page discussion.

Les deux installation peuvent se faire separement et indifferement

Les fichiers sont disponibles sur le repository centosplus [1]

Les mises à jour de SME sont dispo sur ce mirroir en plus de celui de iblio [2] et les fichiers de base : [3]

L'installation est faite pour un i386, adaptez si votre processeur est different.

Sommaire

Mysql 5 sous SME7.2 et supérieur

Cette méthode vous permettra d'installer Mysql5 sans installer PHP5. Toutes les autres méthodes vous installent des paquets appartenant à php5 et risquant de vous obliger à faire la mise à jour vers php5 en même temps.

Avant de faire ce genre de choses même si je suis sur que ça marche et que j'ai déjà une sauvegarde automatique toutes les heures je préfères faire un backup, après c'est vous qui voyez.. y'en a qui ont essayé ...

mysqldump -aec >mondump.sql

la commande magique :

yum update --enablerepo=centosplus  mysql-server  --exclude=php-pdo --exclude=php-common --exclude=php-mysql --exclude=perl-DBD-MySQL --exclude=perl

veillez à ce que les paquets suivants ne soient pas installés ou mis a jours:

  1. php-pdo
  2. php-common
  3. php_mysql
  4. perl-Filter
  5. perl-Tim-Hires
  6. perl
  7. perl-DBD

Les fichiers Perl vous empêcheraient d'accéder au server manager, et les fichier php engendrerai un changement dans php.ini vous empêchant de vous connecter a mysql via php tel qu'il est installé sur SME.

donc vous devez voir apparaitre ceci (les numéro de version sont susceptibles d'évoluer):

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Updating:
 mysql-server            i386       5.0.54-1.el4.centos  centosplus        9.6 M
Installing for dependencies:
 mysql-libs              i386       5.0.54-1.el4.centos  centosplus        1.8 M
 mysqlclient14           i386       4.1.22-1.el4s1.1  centosplus        1.2 M
Updating for dependencies:
 mysql                   i386       5.0.54-1.el4.centos  centosplus        2.8 M

Transaction Summary
=============================================================================
Install      2 Package(s)
Update       2 Package(s)
Remove       0 Package(s)
Total download size: 15 M
Is this ok [y/N]:


puis exécutez ceci :

cat /usr/share/mysql/mysql_fix_privilege_tables.sql | /usr/bin/mysql --force --user=root --host=localhost --database=mysql
mysql -e "GRANT SELECT,INSERT,UPDATE,DELETE ON horde.* TO 'horde'@'localhost';FLUSH PRIVILEGES"
service mysqld stop;
service mysqld start;
/etc/rc.d/init.d/mysql.init restart;

la commande cat /usr/share/mysql/mysql_fix_privilege_tables.sql.... peut donner quelques erreurs ne vous en inquiétez pas.

Enjoy !

PHP 5 sur une SME 7.3

A lire aussi :

  1. http://schwarzecker.homelinux.net/index.php?option=com_content&task=view&id=145&Itemid=2
  2. http://forums.contribs.org/index.php?topic=34721.0
  3. http://wiki.contribs.org/PHP#PHP_5


Avant tout vous devez installer mysql5, autant mysql 5 peut fonctionner avec php4 autant les paquets mysql 4 pour php5 ne sont pas disponibles.


installez les mise à jour de php 5 sur centosplus

tapez ceci:

yum --enablerepo=centosplus install php.i386 php-pear-Net-Socket php-pear-Auth-SASL php-pear-DB php-pear-HTTP php-pear-Mail php-pear-XML-Parser php-gd 

vous verrez ceci à installer, répondez "y"

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 php-pear-Auth-SASL      noarch     1.0.2-4.el4.centos  centosplus         10 k
 php-pear-DB             noarch     1.7.6-6.el4.centos  centosplus        130 k
 php-pear-HTTP           noarch     1.4.0-7.el4.centos  centosplus         10 k
 php-pear-Mail           noarch     1.1.14-1.el4.centos  centosplus         25 k
 php-pear-Net-Socket     noarch     1.0.6-5.el4.centos  centosplus         10 k
 php-pear-XML-Parser     noarch     1.2.7-4.el4.centos  centosplus         19 k
 php-gd                  i386       5.1.6-3.el4s1.8  centosplus        102 k
 php-xml                 i386       5.1.6-3.el4s1.8  centosplus         85 k
     replacing  php-domxml.i386 4.3.9-3.22.9

Updating:
 php                     i386       5.1.6-3.el4s1.8  centosplus        1.1 M
Installing for dependencies:
 php-cli                 i386       5.1.6-3.el4s1.8  centosplus        2.0 M
 php-common              i386       5.1.6-3.el4s1.8  centosplus        136 k
 php-pdo                 i386       5.1.6-3.el4s1.8  centosplus        220 k
 php-pear                noarch     1:1.4.11-1.el4s1.1  centosplus        345 k
 php-pear-Net-SMTP       noarch     1.2.8-5.el4.centos  centosplus         16 k
Updating for dependencies:
 php-imap                i386       5.1.6-3.el4s1.8  centosplus         48 k
 php-ldap                i386       5.1.6-3.el4s1.8  centosplus         31 k
 php-mbstring            i386       5.1.6-3.el4s1.8  centosplus        970 k
 php-mysql               i386       5.1.6-3.el4s1.8  centosplus         77 k 

Transaction Summary
=============================================================================
Install     13 Package(s)
Update       5 Package(s)
Remove       0 Package(s)
Total download size: 5.4 M
Is this ok [y/N]:


Certaines erreurs peuvent apparaitre pendant l'installation des paquets comme: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/ mbstring.so' - /usr/lib/php/modules/mbstring.so: cannot open shared object file: No such file or directory in Unknown on line 0 . Ces erreurs sont causées par le redémarrage de httpd sans la mise a jour des fichiers templatisés par SME. On va corriger cela à la prochaine commande.


Ne vous inquiétez pas, tout va bien si vous pouvez voir ceci à la fin :

Installed: php-pear-Auth-SASL.noarch 0:1.0.2-4.el4.centos php-pear-DB.noarch 0:1.7.6-6.el4.centos php-pear-HTTP.noarch 0:1.4.0-7.el4.centos php-pear-Mail.noarch 0:1.1.14-1.el4.centos php-pear-Net-Socket.noarch 0:1.0.6-5.el4.centos php-pear-XML-Parser.noarch 0:1.2.7-4.el4.centos php-xml.i386 0:5.1.6-3.el4s1.8 php-gd.i386 0:5.1.6-3.el4s1.8
Dependency Installed: php-cli.i386 0:5.1.6-3.el4s1.8 php-common.i386 0:5.1.6-3.el4s1.8 php-pdo.i386 0:5.1.6-3.el4s1.8 php-pear.noarch 1:1.4.11-1.el4s1.1 php-pear-Net-SMTP.noarch 0:1.2.8-5.el4.centos
Updated: php.i386 0:5.1.6-3.el4s1.8
Dependency Updated: php-imap.i386 0:5.1.6-3.el4s1.8 php-ldap.i386 0:5.1.6-3.el4s1.8 php-mbstring.i386 0:5.1.6-3.el4s1.8 php-mysql.i386 0:5.1.6-3.el4s1.8
Replaced: php-domxml.i386 0:4.3.9-3.22.9
Complete!
==============================================================
WARNING: You now need to run BOTH of the following commands
to ensure consistent system state:

signal-event post-upgrade; signal-event reboot

You should run these commands unless you are certain that
yum made no changes to your system.
==============================================================

et la vous pouvez soit faire ce qui vous est demandé :

signal-event post-upgrade; signal-event reboot


soit:

expand-template /etc/php.ini
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

avec si vous avez php-ki d'installer ( avec open vpn bridge par exemple)

expand-template /etc/httpd/conf/pki-conf/httpd.conf
service httpd-pki restart

avec si vous avez freepbx installé

expand-template /etc/httpd/conf/freepbx-conf/httpd.conf
service httpd-freepbx restart

vérifier le bon fonctionnement

php-domxml n'est logiquement plus nécessaire, le paquet php-xml installé en version 5 doit prendre le relais, vérifiez tout de même le bon fonctionnement du webmail https:\\SERVER\webmail

mettre a jour php5 par la suite

yum update php --enablerepo=centosplus

revenir de php5 vers php 4

service httpd-e-smith stop
rpm -e --nodeps php-mysql php-imap php-pdo php-gd php-mbstring php-pear php-ldap php-xml php php-cli
yum install php php-mysql php-imap php-domxml php-gd php-pear php-ldap php-mbstring e-smith-horde 
expand-template /etc/php.ini
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith start


pour info ce fil est intéressant: http://forums.ixus.fr/viewtopic.php?t=40722

update 7.4

Lors de la mise a jour vers sme 7.4 si vous avez php5 d'installé , celle ci refusera de se faire a cause d'un conflit php-domxml. Faute de trouver une façon plus élégante de procéder voici comment faire ...


vous serez obligé de désinstaller php5 le temps de la mise a jour vers 7.4 (voir le paragraphe au dessus).

service httpd-e-smith stop
rpm -e --nodeps php-mysql php-imap php-pdo php-gd php-mbstring php-pear php-ldap php-xml php php-cli
yum install php php-mysql php-imap php-domxml php-gd php-pear php-ldap php-mbstring e-smith-horde 
expand-template /etc/php.ini
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith start

mettre a jour:

yum update

rebooter avec mise a jour des parametres

signal-event post-upgrade; signal-event reboot


puis réinstaller php5

yum --enablerepo=centosplus install php.i386 php-pear-Net-Socket php-pear-Auth-SASL php-pear-DB php-pear-HTTP php-pear-Mail php-pear-XML-Parser php-gd 
expand-template /etc/php.ini
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

Remerciement

adili du forum Ixus.net [4] le forum contribs [5]