Mysql socket
Olivier
-
reeko -
reeko -
Bonjour,
j'ai installé php,mysql et apache2. Tous fonctionne sauf lors des script php faisant appel au mysql j'ai une erreure lors de la connection qui me dit:
Pourtant mon socket mysql se trouve bien à cette endroit. Quelqu'un peut-il m'aider?
merci d'avance
j'ai installé php,mysql et apache2. Tous fonctionne sauf lors des script php faisant appel au mysql j'ai une erreure lors de la connection qui me dit:
Warning: mysql_connect(): Can't connect to local MySQL server through socket '/usr/local/mysql/tmp/' (13)
Pourtant mon socket mysql se trouve bien à cette endroit. Quelqu'un peut-il m'aider?
merci d'avance
10 réponses
-
Olivier,
Profites-en aussi pour nous dire quelle est ta distribution Linux... et puis donnes nous le résultat de
ps axl | grep mysql
et
mysql -p
Dans une console sous root, histoire de vérifier que ton démon mysql est bien lancé.
Dal -
il y a pas mal de sujets sur ce problème sur google, dis-nous les solutions que tu as déjà essayées afin qu'on ne répète pas ce que tu as déjà écrémé
-
J'utilise linux mandrake 10.2 edition limited en dvd, sinon je n'ai pas encore essayer tes commandes mais je suis sur que mysql est lancé car j'arrive à voir les tables mysql par la console mais je vais essayer les commandes.
-
[root@localhost ~]# ps axl | grep mysql 4 0 17052 1 24 0 2576 1352 wait S pts/1 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.pid 4 501 17078 17052 18 0 360984 15052 select Sl pts/1 0:00 /usr/local/mysql//libexec/mysqld --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/localhost.pid --skip-locking --port=3306 --socket=/usr/local/mysql/tmp/mysql.sock 0 0 17088 17015 19 0 1936 732 - R+ pts/1 0:00 grep mysql
[root@localhost ~]# /usr/local/mysql/bin/mysql -u CrooOl -p mysql Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 4.0.25-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
voila le résultat des commandes -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Salut,
A tout hasard, je sais que j'ai eu ce probléme, mais je ne sais plus comment ça c'est résolu, tu peux toujours tenter dans /etc/php.ini de mettre à la ligne:
mysql.default_socket
mysql.default_socket =mysql.sock
Il se peut que php cherche un fichier mysql.socket par defaut.
-
oui c'est bien sa le prob php prend mysql.socket par défault mais même avec mysql.sock dans php.ini sa ne change rien j'ai tjs dans mysql de phpinfo() la ligne
MYSQL_SOCKET /usr/local/mysql/tmp/mysql.socket
et c'estMYSQL_SOCKET /usr/local/mysql/tmp/mysql.sock
qu'il faudrait. Comment faire alors que lors de la compilation j'ai déja mis--with-mysql-sock=/usr/local/mysql/tmp/mysql.sock
-
-
-
J'avance mais je ne suis pas encore au finale j'ai réussi à avoir les même socket dans php et mysql en changant dans my.cnf mais sa ne va tjs pas lors des connection mysql par php :-( .
-
Salut Olivier,
Donc il semble bien que ton serveur MySQL soit lancé.
Dans son paramétrage mysql permet de restreindre l'accès aux bases de données (y compris à la connexion) à certains utilisateurs seulement ou à certains hôtes seulement. As-tu spécifié des restrictions particulières ? Ton Apache est-il sur le même hôte que le serveur MySQL ?
Voir http://www.databasejournal.com/features/mysql/article.php/3311731
et les permissions définies dans les tables "user", "db", et "host".
Dal
PS : sur une autre piste... a tout hasard.. peux tu nous poster le résultat de
ls -l /usr/local/mysql/tmp/mysql.sock*
-
Bonjour,
Pour ce problème, il suffit de trouver le chemin sur lequel se trouve le fichier mysql.sock
Fichier trouveé dans "/usr/local/mysql/". Ensuite, vous créez un lien sur le répertoire "/tmp" avec la commande suivante:
$ ln -s /usr/local/mysql/mysql.sock /tmp
Et ça marche, vous avez plus à lancer la commande "mysql -uroot -p<password> --socket=/usr/local/mysql/mysql.sock";
vous lancerez directement la commande "mysql -uroot -p<password>"
Cordialement -
hum il ya un probleme MySQL a répondu:?
#1045 - Access denied for user 'root'@'localhost' (using password: NO)
pourtant , cand je vais dans la console il est indiquer que le mot de pass est le bon que faire :s?