problème de socket avec MySQL sur une commande PHP mysql_connect()

problème de socket avec MySQL sur une commande PHP mysql_connect() - Installation - Linux et OS Alternatifs

Marsh Posté le 13-03-2003 à 16:36:59    

Bonjour à tous et à toutes,
 
je viens d'installer Mysql, PHP, et apache 1.3 sur une Redhat 8.
Tout à l'air de fonctionner si ce n'est de temps en temps l'erreur suivante :
 
Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) in /www/web/mime/admin/add_admin.php on line 44
 
Est ce que quelqu'un peut me dire ce qu'est ce socket ?
Je ne sais pas si ça viens de PHP, MySQL ou d'une mauvaise installation.
 
Le code PHP fonctionne tant que ce n'est pas des commandes liées à MySQL,
Apache fonctionne,
j'arrive à me connecter à mysql depuis mon client MySQLFront installé sur WinXP avec les mêmes paramètres que ceux que j'emploie avec mysql_connect().
 
help (pour un débutant Linux)
 
merci d'avance
 
Alex01

Reply

Marsh Posté le 13-03-2003 à 16:36:59   

Reply

Marsh Posté le 13-03-2003 à 17:20:27    

l'erreur c'est de temps en temps ou tout le temps ?

Reply

Marsh Posté le 13-03-2003 à 17:38:44    

de temps en temps !
 
je sais, ce n'est pas le mieu  :pfff:

Reply

Marsh Posté le 14-03-2003 à 10:21:33    

l'erreur survient-elle toujours sur la meme page ou sur differentes pages?
si c'est toujours la meme alors c'est un pb de syntaxe.
sinon tu as plusieurs solution:
 - un time out mal regle quelque part
 - un cron (ou une autre commande) qui redemarre mysql

Reply

Marsh Posté le 14-03-2003 à 10:44:27    

oui, toujours sur les mêmes pages.
 
Mais par exemple :
lorsque j'utilise la commande mysql_connect("serveur","login","pass" );
ça fonctionne bien !
 
Mais lorsque je souhaite installer phpMyAdmin, quand je renseigne l'adresse du serveur, si je mets 'localhost' ou '127.0.0.1' j'ai le problème. Par contre si je mets l'adresse IP du serveur '10.35.128.151' alors il n'y a plus d'erreur.
 
Et lorsque je veux installer des outils pret à l'emploi j'ai souvent ce problème.
 
Si tu vois d'où ça peut venir  :??: ?
Merci de m'aider  :jap:  
 
Alex01  
 

Reply

Marsh Posté le 14-03-2003 à 10:49:41    

quand tu te connecte sur "localhost" est-ce que tu utilises le login et le pass "root" de mysql (c'est pas le meme que celui du systeme)?

Reply

Marsh Posté le 14-03-2003 à 11:13:25    

tu dois avoir un pb de droits d'acces, lorsque tu es connecte avec phpmyadmin, verifie que tes utilisateurs mysql ont bien le droit d'acces sur localhost.

Reply

Marsh Posté le 14-03-2003 à 11:19:50    

Non, j'ai créé dans mysql un nouvel utilisateur ayant les même droits que le root. Je me connect donc avec ce login qui a tous les privilèges. Par contre quand j'ai créé ce super user j'ai mis : ... TO 'admin3'@'%' ...
Pour configurer phpMyAdmin, j'ai utilisé cet utilisateur sur l'IP '10.35.128.151'. Pour me connecter dans mon code PHP à mysql c'est aussi lui que j'utilise.
 
Mais lorsque sur des applis PHP toutes prêtes j'utilise cet utilisateur, le système me sort l'erreur de socket !
 
Et voilà !
 
Alex01

Reply

Marsh Posté le 14-03-2003 à 11:41:14    

Doc mysql:
 
 

Citation :

A full superuser who can connect to the server from anywhere, but who must use a password 'some_pass' to do so. Note that we must issue GRANT statements for both monty@localhost and monty@"%". If we don't add the entry with localhost, the anonymous user entry for localhost that is created by mysql_install_db will take precedence when we connect from the local host, because it has a more specific Host field value and thus comes earlier in the user table sort order.

 
 
Donc tu dois rajouter explicitement ton superuser sur localhost pour que ca fonctionne car le signe "%" represente tout les serveurs  sauf localhost.

Reply

Marsh Posté le 14-03-2003 à 11:56:53    

Ok, bien je vois ...  :ouch:  
 
Merci beaucoup, :jap:  :jap:  
 
Je ne sais pas comment ajpouter cet User sur localhost mais je vais chercher.
 
Merci de ton aide, :jap:  
 
Alex01 :bounce:

Reply

Marsh Posté le 14-03-2003 à 11:56:53   

Reply

Marsh Posté le 14-03-2003 à 13:46:09    

Pour l'ajouter, tu te connecte sur mysql et tu tapes la meme commande la meme commande que tu as tape pour ajouter ton superuser mais au lieu de "TO 'admin3'@'%'" tu mets "TO 'admin3'@'localhost'" .
 
Voila

Reply

Marsh Posté le 14-03-2003 à 14:50:26    

Merci beaucoup de ton aide  :ange: .
 
A plus... :hello:  
 
Alex01  :p

Reply

Marsh Posté le 14-03-2003 à 15:00:17    

de rien
 
tcho  :hello:

Reply

Marsh Posté le 14-03-2003 à 20:25:37    

Salut
 
tu peux aussi utiliser la méthode de créer ds le réperoire de ton user un fichier .my.cnf ds lequel t'ajoutes la ligne suivante :
[client]
socket=/tmp/mysql.sock

Reply

Marsh Posté le 29-06-2003 à 11:12:43    

Un peu le meme probleme.
Sur une Debian Woody testing.
 
Apres un tasksel SQL, des que je fait ou install qqch qui touche a SQL, ca plente.
 
 
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com
 
Warning: Ignoring user change to 'mysql' because the user was set to 'mysql' earlier on the command line
030629 11:11:18  /usr/sbin/mysqld: Shutdown Complete
 
030629 11:11:18  Error at /etc/init.d/mysql\n/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
030629 11:11:18  mysqld started
Warning: Ignoring user change to 'mysql' because the user was set to 'mysql' earlier on the command line
/usr/sbin/mysqld: ready for connections.
Version: '4.0.13-log'  socket: '/var/run/mysqld/mysqld.sock'  port: 0
030629 12:26:57  /usr/sbin/mysqld: Normal shutdown
 
030629 12:26:57  /usr/sbin/mysqld: Shutdown Complete
 
030629 12:26:57  mysqld ended

 
 
Une idée dans ma méconnaissance de SQL.....

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed