Activation de PHP - Installation de Mysql après màj de Tiger - désinstall de Mysql et install propre sous Léopard

Procédures d'Intallation sous Léopard 10.5

Initialisation de PHP

Léopard est livré avec la version PHP 5.2.4.
Si, sous Tiger, vous avez installé une version avec l'installeur d'entropy, votre PHP5 se trouve dans usr/local
Celle livrée avec Léopard tourne sous apache2 et se trouve dans usr/lib.
C'est cette dernière qu'il faut activer.

Pour activer PHP il faut décommenter la ligne #LoadModule php5_module libexec/apache2/libphp5.so du fichier httpd.conf situé dans le dossier apache2 du dossier etc.

Procédé

  • Ouvrez Safari et tapez file:///etc/apache2
  • Sélectionnez le fichier httpd.conf et faîtes-le glisser sur votre bureau.

Ouvrez-le dans bbEdit Lite ou dans TextWrangler (gratuits)

Dans bbEdit comme dans TextWrangler, affichez les numéros de ligne (menu View->Text Display -> Show Line Numbers)

  • Recherchez (ligne 114) #LoadModule php5_module libexec/apache2/libphp5.so

  • et décommentez-la en supprimant le signe # qui la débute.

  • Enregistrer et refermez le fichier.
  • Replacez (par glisser déposer) le fichier httpd.conf dans le dossier apache2.
    • Une fenêtre apparaîtra vous demandant de vous authentifier. Cliquez sur Authentifier.
    • Un message apparaîtra vous indiquant qu'un élément plus ancien existe déjà. Cliquez sur Remplacer
    • Une boîte de dialogue apparaîtra vous demandant de taper votre mot de passe (administrateur). Entrez-le et cliquez sur OK.

Activation

Pour activer le serveur, allez dans Préférences système -> Partage et cochez la case Partage Web. Si elle est déjà cochée, décochez-la pour arrêter le serveur et recochez-là pour que la modification du fichier httpd.conf soit prise en compte.

Test

  • Créez un fichier test.php qui comporte ce code :

<?php phpinfo() ?>

  • Glissez ce fichier dans Bibliothèque -> WebServer -> Documents
  • Ouvrez Safari et tapez : localhost/test.php

Vous devriez voir s'afficher une page contenant votre configuration PHP5 :

MySQL depuis une mise à jour de leopard depuis Tiger

Si vous avez effectué une mise à jour de Léopard depuis Tiger et que vous ayez déjà mySQL installé (ainsi que que vos bases de données), le fichier se trouve également dans usr/local

Si vous avez procédé à une "clean install", vous n'avez pas mySQL (qui n'est pas livré avec Léopard). En ce cas, téléchargez-le depuis ce site : http://dev.mysql.com/downloads/mysql/5.0.html#macosx-dmg. Vous trouverez également les procédures d'installation ici : http://dev.mysql.com/doc/refman/5.0/fr/mac-os-x-installation.html

PreferencePanes

Si vous avez procédé à une mise à jour de Léopard, et déjà installé mySQL sous Tiger, vous avez problablement installé également un "PreferencePanes" dont l'accès se trouve en bas des Preferences Système et qui vous permet d'activer/désactiver le serveur mySQL.

Ce fichier n'est plus valable sous Léopard.

  • Allez dans Bibliothèque -> PreferencePanes et mettez à la corbeille (s'il existe) le fichier MySQL.prefPane
  • Téléchargez l'installeur MySQL-PrefPane-1.2.dmg (http://creativeeyes.at/tools/mysqlpp.php) et installez-le.

Le fichier my.cnf

Pour que Léopard sache où se trouve mysql il faut créer un fichier my.cnf dans le dossier etc.

Création du fichier avec Terminal

  • Lancez Terminal
  • Tapez sudo nano /etc/my.cnf
  • Entrez votre mot de passe
  • Tapez (copiez-coller depuis cette page) :

[client]

socket = /var/mysql/mysql.sock

[mysqld]

socket = /var/mysql/mysql.sock

  • Puis tapez Ctrl+X et ensuite la touche Y
  • Quittez Terminal er redémarrez l'ordinateur.

Création du fichier avec bbEdit ou TextWrangler

Si vous ne voulez pas passer par Terminal :

  • Ouvrez bbEdit ou TextWrangler
  • Copiez le code ci-dessus.
  • Enregistrez le fichier sous my.conf
  • Dans Safari, tapez file:///etc/
  • Glissez le fichier my.conf dans le dossier (vous aurez à vous identifier).
  • Redémarrez l'ordinateur.

Vérification

Une fois l'ordinateur relancé, vous pouvez voir dans les Préférences système, en bas, l'existence d'une icône MySQL. Un clic dessus permet de s'assurer que le serveur est actif. Vous avez la possibilité de le désactiver.

Si vous possédez phpMyAdmin, glissez le dossier dans Bibliothèque -> WebServer -> Documents et appelez-le dans Safari. Vous devriez avoir accès à vos bases de données.

Utilisateurs de Eskuel

Eskuel est une alternative à phpMyAdmin et est téléchargeable ici http://www.phptools4u.com/scripts/eskuel/

Il semble que Léopard n'accepte pas les utilisateurs "" (vide)
Si, comme moi, vous aviez l'habitude de vous logger sans nom d'utilisateur et sans mot de passe, eskuel affichera une erreur.
Pour remédier à cela, dans le dossier eskuel, ouvrez le fichier config.inc.php

  • Recherchez cette ligne : $confDB['0']['user'] = ''; et tapez root comme utilisateur , ce qui donne cela :
    $confDB['0']['user'] = 'root';
  • Enregistrez. Ça devrait refonctionner.

En interne vos sites ne peuvent pas se connecter

Vous avez des sites qui demandent à se connecter à vos bases de données et vous obtenez ce message d'erreur :

Warning: mysql_pconnect() [function.mysql-pconnect]: Access denied for user '_mdnsresponder'@'localhost'

Même raison que plus haut : cela signifie que, dans le fichier de configuration de votre site, l'utilisateur est vide. Remplacez-le par root.

Exemple de fichier de configuration de site :

<?php
//Base name :
$DBName= "maBase";
//Nom d'utilisateur :
$userName = "root";
//Mot de passe :
$DBpasswd = "";
//Chemin sgbd :
$DBhost = "localhost";
?>

Désinstaller MySql et refaire une installation propre

En installant un nouveau système Léopard sur un autre disque dur, je me suis rendu compte que certaines choses avaient changé car j'avai un message m'informant d'un problème de socket non reconnu.

Pour comparaison, voici les deux configurations de PHP (info) :

1- La configuration de mon système Léopard mis à jour depuis Tiger

image

2) La configuration d'une installation directe de Leopard 10.5.8

image

Comme on peut le remarquer, les chemins d'accès diffèrent et notamment le MYSQL_SOCKET.

Pour éviter les bidouilles de hautes volées, j'ai préféré désinstaller MysQsl et refaire une installation propre.

Désinstallation de MySQL

Comme Terminal et les lignes de commande me sont profondémment rédhibitoires, je procède à la main et, comme il va falloir ouvrir des dossier invisibles, je procède soit par le menu Finder Aller au dossier ou via son raccourci clavier Maj+Cde+G

image

Pour aller au dossier etc, j'entre /etc

image

Note pour déplacer des fichiers à la corbeille, il faudra certainement vous authentitifier

Avant de procéder, assurez-vous que MySql ne tourne pas (Préférences Système)

Sauvegarder les bases de données

Avant tout, il faut faire ne sauvegarde de vos bases de données, soit par la méthode classique, en les exportant au format .sql via votre gestionnaire de BD (Eskuel, PHPMyAdmin...), soit via le Terminal par ligne de commandes, soit par la méthode manuelle décrite ci-après :

Voici la liste des fichiers et dossiers à mettre à la corbeille

Dossier etc :

le fichier (que vous avez probablement créé) my.cnf

image

Dans de dossier etc, recherchez le fichier hostconfig, ouvrez-le (dans bbEdit, textWrangler...) et enlevez la ligne MYSQLCOM=-YES-

image

Et enregistrez.

Dossier /usr/local/

Aller dans le dossier usr/local (Maj+Cde+G) en entrant :

image

Mettez à la corbeille l'alias (en fait un lien symbolique) mysql et le dossier de la version que vous possédez (ici la 5.041...)

image

Dans la bibliothèque

(celle qui se trouve à la racine de votre disque système) ouvrez les dossiers suivants

  • PreferencePanes : enlevez MySQL.prefPane
  • StartupItems : enlevez MySQLCOM
  • Receipts : enlevez les paquets se référant à mysql :

image

Videz la corbeille.


Réinstallation propre de MySQL

Pour réinstaller une version propre, allez ici : http://dev.mysql.com/downloads/mysql/5.0.html#macosx-dmg

et téléchargez la version adaptée à votre plateforme (pour Mac la mention X86 signifie MacIntel — avec 32 ou 64 bits) dans la série de Packages format si vous souhaitez bénéficier de l'installeur.

Vous obtenez cette image disque :

image

Cliquez sur le paquet mysql-5... et lorsque l'installation est éffectuée, cliquez sur le paquet MysqlStartupItem. Une fois ce dernier installé, il vous reste à faire glisser manuellement le fichier MySql.prefPane dans le dossier PréférencePane de la Bibliothèque.

  • Redémarrez l'ordinateur.
  • Assurez-vous que mysql est lancé au démarrage via les préférences sytème ->Autre -> Mysql

Note : Si ce n'est déjà fait : lisez-ceci