Installation MySQL - Installation - Linux et OS Alternatifs
Marsh Posté le 22-07-2003 à 20:06:48
as tu verifier que tu as "activer" mysql à la compilation de ton php?
tu l'as installé comment php4?
Marsh Posté le 22-07-2003 à 20:13:25
Complément d'informations.
phpinfo m'indique ceci:
Configure Command ... '--with-mysql=shared' ...
Et lorsque je tape:
rpm -qa | grep php
j'obtiens php-4.0.6-12
et rpm -qa | grep MySQL donne:
MySQL-devel-4.0.13-0
MySQL-shared-4.0.13-0
MySQL-embedded-4.0.13-0
MySQL-bench-4.0.13-0
MySQL-server-4.0.13-0
MySQL-client-4.0.13-0
MySQL-Max-4.0.13-0
MySQL-shared-compat-4.0.13-0
perl-DBD-MySQL-1.2216-4
Oui je sais, j'ai installé un peu + que nécessaire, mais dans mon cas, vaut mieux installer trop que trop peu
Marsh Posté le 22-07-2003 à 20:16:16
dans ton cas, il aurait fallu installer tout ca à la mano
rien de vaut un bon ./configure je trouve.
sinon moi à ce que j'en vois c'est que tu n'as pas la fonction mysql_connect de connu .. donc que ton php n'a pas ete compilé pour fonctionner avec mysql ce qui est TRES TRES chelou pour un rpm!
Marsh Posté le 22-07-2003 à 20:16:45
la viper a écrit : tu l'as installé comment php4? |
PHP était installé par défaut avec ma distribution (pas tout à fait RedHat, plutôt Clark Connect qui est une version allégée qui sert uniquement de serveur).
Marsh Posté le 22-07-2003 à 20:20:56
la viper a écrit : dans ton cas, il aurait fallu installer tout ca à la mano |
Je suis d'accord avec toi, mais cette distribution est tellement pratique!
Tu me conseilles donc de désinstaller php et de l'installer manuellement? Est-ce que je devrai faire de même avec MySQL?
J'espère que je m'en sortirai pour mettre les paramètres de php, parce que je n'ai aucune idée de ce que je dois mettre.
Marsh Posté le 22-07-2003 à 20:25:51
non tu fais ca que pour php .. attend je te donne la manip à faire!
Marsh Posté le 22-07-2003 à 20:32:28
http://lea-linux.org/admin/phpmysql.php3
#tar -xzf php-4.3.1.tgz
#cd php-4.3.1
#./configure ?with-apxs2=/usr/local/apache2/bin/apxs ?with-mysql ?with-ldap ?enable-calendar ?with-xml ?with-zlib ?with-sybase=/usr/local/freetds/ --enable-tracks
(--with-mysql est activé par défaut il n'est donc pas nécessaire, la librairie du calendrier ne l'est pas)
#make
#make install
Copier le fichier php-dist.ini dans /usr/local/apache2/conf
#cp php-dist.ini /usr/local/apache2/conf/php.ini
Il faudra juste vérifier si dans le fichier de configuration httpd.conf (/usr/local/apache2/conf) que les lignes suivantes sont présentes (sinon il faudra les ajouter) :
LoadModule php4_module libexec/libphp4.so
AddModule mod_php4.c
AddType application/x-httpd-php .php
Marsh Posté le 22-07-2003 à 20:36:32
Ok merci bcp, j'essaie ça et je te tiens au courant.
Si pas de réponse aujourd'hui, c'est que j'en ai eu subitement marre et que j'ai éteint le PC
Hem, mém pas drôle
Marsh Posté le 22-07-2003 à 20:39:10
ouhai mais tu mets pas les options -with-ldap et ?with-sybase=/usr/local/freetds/
allé le bouton power il est sur la tour du pc !
Marsh Posté le 22-07-2003 à 21:01:50
Ben ma ligne configure est super réduite! Ca plante avec tous les autres paramètres!
#./configure ?with-mysql ?enable-calendar ?with-xml --enable-tracks
lol comme il n'y a plus rien qui va fonctionner
En tout cas, linux c'est quand même bien fait. J'ai désintallé le rpm php, et webmin et clark connect admin fonctionnent toujours. Même ma petite page php de test fonctionne!
Je n'ai pas trop envie de rebooter (réflexe windoze), mais bon...
Allez, plus que le make et le make install + "quelques détails"
Marsh Posté le 22-07-2003 à 21:53:17
Bon, ben voilà j'ai terminé l'installation.
Il y a juste que le fichier php-dist.ini s'appelle en réalité php.ini-dist et que le répertoire /usr/local/apache2/conf n'existe pas chez moi.
J'ai donc copié le fichier dans le répertoire /etc/ tel qu'il s'y trouvait auparavant (sous le nom php.ini bien sûr).
J'ai exécuté une de mes pages php (phpinfo au hasard), et à ma grande surprise... tadaaaaaaa y a rien qui marche. lol comme je ne m'y attendais pas
Tous les scripts php sont ignorés. Donc l'html s'affiche, et il ignore complètement les balises php.
A suivre... mais plus aujourd'hui parce que :kaola::pt1cable:
Merci!
Marsh Posté le 22-07-2003 à 22:15:04
vu la description de ton problème, il semble que quelque chose ne passe pas au niveau du module php de ton serveur apache (mod_php).
Ce lien concerne une gentoo, mais tu peux peut etre y trouver une piste.
http://forums.gentoo.org/viewtopic [...] ht=modphp4
Marsh Posté le 22-07-2003 à 22:47:58
ouais dans le httpd.conf t'as du oublié de décommenter le module php.
Citation : LoadModule php4_module /usr/lib/apache/1.3/libphp4.so |
sous debian
CHaiCA
Marsh Posté le 23-07-2003 à 20:15:56
Comme je vous l'ai dit plus haut, j'ai copié manuellement le fichier php.ini dans le répertoire /etc.
Peut-être que je dois le déplacer autre part? Comment savoir où va php (ou Apache?) rechercher la référence vers ce fichier?
Marsh Posté le 24-07-2003 à 22:36:44
Bon, ben là je suis dans le caca!
Mon interface d'administration de Clark Connect ne se lance plus (ce sont des pages php...), et je ne sais donc plus administrer à distance. Enfin, je sais toujours lancer des commande dans webmin, mais ce n'est pas le top.
Et comment qu'j'ai tout cassé?...
J'ai bêtement réinstallé Apache et PHP suivant la description de Lea.
En fait, j'ai écrasé la version existante parce que je ne sais pas comment on désinstalle un logiciel Linux qui a été installé manuellement...
Dans Webmin, je suis allé voir la version de Apache qui était actuellement en cours d'utilisation, et il s'agit de ma version précédente. Comme si je n'avais rien installé (pourtant la nouvelle version est bien là, j'en suis convaincu).
Des idées? des solutions pour que la version que je viens d'installer soit chargée?
Merci de tirer la chasse quand vous avez fini de répondre
Marsh Posté le 25-07-2003 à 12:44:08
[admin@admin3 admin]$ rpm -qa | grep -i apache
apache2-modules-2.0.47-4mdk
apache2-manual-2.0.47-4mdk
apache-conf-2.0.47-2mdk
apache2-common-2.0.47-4mdk
apache2-mod_php-2.0.47_4.3.2-2mdk
apache2-2.0.47-4mdk
[admin@admin3 admin]$ rpm -qa | grep -i php
php-manual-en-4.3.2-2mdk
libphp_common432-4.3.2-8mdk
php-pgsql-4.3.2-4mdk
php-ini-4.3.2-2mdk
apache2-mod_php-2.0.47_4.3.2-2mdk
php-manual-fr-4.3.2-2mdk
le support mysql s'active dans php en installant php-mysql et en décommant la ligne qu'il faut ( si pas fait par le package lui-même ) dans /etc/php.ini
le support php dans apache s'active en installant apache-mod_php et en décommentant la ligne de support php dans httpd.conf ou commonhttpd.conf.
bien sûr à chaque fois il faut relancer apache ( "service httpd reload" ou "service httpd restart" )
Marsh Posté le 26-07-2003 à 00:41:53
Voilà un message d'erreur qui va peut-être vous aider à comprendre ce que ne va pas dans ma config.
Ceci est le message que j'obtiens lorsque je fais un start de Apache dans Webmin:
Failed to start apache :
Starting httpd: [Sat Jul 26 00:34:57 2003] [warn] Loaded DSO libexec/libphp4.so uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI)
Syntax error on line 335 of /etc/httpd/conf/httpd.conf:
Invalid command 'Order', perhaps mis-spelled or defined by a module not included in the server configuration
[FAILED]
J'avais installé Apache en utilisant cette ligne de configuration:
./configure --prefix=/var/webconfig --enable-module=so
J'ai essayé donc réessayé avec ./configure --prefix=/var/webconfig --enable-module=so -DEAPI mais il ne comprend pas le paramètre ajouté (et moi non plus d'ailleurs )
Marsh Posté le 22-07-2003 à 19:04:27
Voilà, je viens d'installer MySQL 4.0.13 sur ma RedHat.
J'ai en fait installé tous les rpm qui se trouvaient sur le site officiel : http://www.mysql.com/downloads/mysql-4.0.html.
Via Webmin, j'arrive à créer des DB, des tables etc.
Et lorsque je lance mysql dans un terminal, j'arrive également à exécuter des requêtes.
PHP est également installé, et fonctionne.
Maintenant, j'ai fait une petite page php qui fait une connexion à une DB créée, et cette connexion se termine par un échec.
Fatal error: Call to undefined function: mysql_connect() in /var/www/html/tests/mysql.php on line 8
Voici mon code (je débute en PHP):
<?php
$link = mysql_connect("localhost", "root", "" ) or die("Unable to connect to MySQL server : " . mysql_error());
print ("Connection OK." );
mysql_close($link);
?>
Je ne pense pas que ce soit à cause d'un mauvais user ou pwd car je n'ai rien changé dans le fichier php.ini, et qu'en laissant les arguments à "" (vide), ça ne change rien. (Par défaut, il n'y a pas de mot de passe.
Mais qui sait, peut-être me trompe-je?!
Je me demandais si je ne devais pas changer un paramètre quelque part pour indiquer que MySQL est installé, et que Apache peut l'utiliser.
Merci pour votre aide!