Novembre 2014: Si vous obtenez cette erreur sur MySQL 5.6.x sur Mac OS X Mavericks ou Yosemite et que vous souhaitez utiliser MySQL avec PHP localement (/tmp/mysql.sock est l'endroit où PHP PDO s'attend à trouver le fichier chaussette), voici ce qui l'a corrigé pour moi:
1) Décommentez les lignes du fichier de configuration homebrew par défaut et modifiez-les comme ci-dessous
$ sudo vi /usr/local/Cellar/mysql/5.6.21/my.cnf
...
basedir = /usr/local/Cellar/mysql/5.6.21
datadir = /usr/local/var/mysql
port = 3306
server_id = <UNIQUE_NUMBER_HERE_OR_LEAVE_COMMENTED_OUT>
socket = /tmp/mysql.sock
pid-file = /usr/local/var/mysql/[BOXNAME].local.pid
....
BOXNAME est ce que vous avez dans vos préférences système -> Réseau comme identifiant unique de votre ordinateur sur le réseau.
2) Définissez les autorisations sur tous les fichiers dans le datadir mysql. Ils appartenaient tous à [my_username]. MySQL est très pointilleux à ce sujet et refuse de créer le fichier pid à moins qu'il (l'utilisateur _mysql) ne possède le répertoire.
$ sudo chown -R _mysql:mysql /usr/local/var/mysql
3) Démarrez MySQL en utilisant le script d'aide / wrapper bash:
$ sudo mysql.server start
Starting MySQL
. SUCCESS!
J'espère que ça t'as aidé. Si ce qui précède ne fonctionne pas pour vous, essayez d'exécuter le binaire mysqld_safe manuellement dans le répertoire Cellar / mysql / VERSION_ / bin / et vérifiez quels sont les paramètres (s'il s'exécute)
sudo /usr/local/Cellar/mysql/5.6.12/bin/mysqld_safe &
Si cela fonctionne, vous pouvez
ps aux | grep mysql
et voir quelque chose comme
[username] 6881 0.0 2.7 3081392 454836 ?? S 8:52AM 0:00.54 /usr/local/Cellar/mysql/5.6.21/bin/mysqld
Je ne sais pas pourquoi cela a fonctionné pour moi, mais cela vous montre d'où j'ai obtenu les options de fichier de configuration my.cnf. Vous pouvez également utiliser les options de ligne de commande pour essayer de dépanner lors du démarrage manuel de mysqld.
Si vous exécutez Manage pour exécuter le serveur MySQL en utilisant mysqld_safe, vous devrez peut-être le faire pour l'arrêter avant d'essayer l'assistant bash mysql.server. Résistez à l'envie de tuer -9 [PID] car vous pouvez corrompre vos données.
mysqladmin -uroot shutdown
Bonne chance!
sudo chown -R _mysql:_mysql /usr/local/var/mysql