Novembre 2014: se ricevi questo errore su MySQL 5.6.x su Mac OS X Mavericks o Yosemite e desideri utilizzare MySQL con PHP localmente (/tmp/mysql.sock è dove PHP PDO si aspetta di trovare il file sock), ecco cosa lo ha risolto per me:
1) Rimuovere il commento dalle righe del file di configurazione homebrew predefinito e modificare come di seguito
$ 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 è quello che hai nelle tue Preferenze di Sistema -> Rete come ID univoco per il tuo computer sulla rete.
2) Imposta i permessi su tutti i file nel datadir mysql. Erano tutti di proprietà di [my_username]. MySQL è molto schizzinoso su questo e rifiuta di creare il file pid a meno che (l'utente _mysql) non possieda la directory.
$ sudo chown -R _mysql:mysql /usr/local/var/mysql
3) Avvia MySQL utilizzando lo script bash helper / wrapper:
$ sudo mysql.server start
Starting MySQL
. SUCCESS!
Spero possa aiutare. Se quanto sopra non funziona per te, prova a eseguire manualmente il binario mysqld_safe nella directory Cellar / mysql / VERSION_ / bin / e controlla quali sono le impostazioni (se funziona)
sudo /usr/local/Cellar/mysql/5.6.12/bin/mysqld_safe &
Se funziona, puoi
ps aux | grep mysql
e vedere qualcosa di simile
[username] 6881 0.0 2.7 3081392 454836 ?? S 8:52AM 0:00.54 /usr/local/Cellar/mysql/5.6.21/bin/mysqld
Non sono sicuro del motivo per cui abbia funzionato per me, ma ti mostra da dove ho preso le opzioni del file di configurazione my.cnf. È inoltre possibile utilizzare le opzioni della riga di comando per provare a risolvere i problemi all'avvio manuale di mysqld.
Se esegui la gestione per eseguire il server MySQL usando mysqld_safe, potresti doverlo fare per spegnerlo prima di provare l'helper bash mysql.server. Resisti all'impulso di uccidere -9 [PID] perché puoi corrompere i tuoi dati.
mysqladmin -uroot shutdown
In bocca al lupo!
sudo chown -R _mysql:_mysql /usr/local/var/mysql