sql >> Base de Datos >  >> RDS >> Mysql

Advertencia:mysql_connect():[2002] No existe tal archivo o directorio (intentando conectarse a través de unix:///tmp/mysql.sock) en

Por alguna razón, mysql en OS X obtiene las ubicaciones del archivo de socket requerido un poco mal, pero afortunadamente la solución es tan simple como configurar un enlace simbólico.

Puede tener un socket (que aparece como un archivo de longitud cero) como /tmp/mysql.sock o /var/mysql/mysql.sock , pero una o más aplicaciones lo están buscando en la otra ubicación. Descúbrelo con este comando:

ls -l /tmp/mysql.sock /var/mysql/mysql.sock

En lugar de mover el socket, editar los archivos de configuración y tener que recordar mantener los archivos editados localmente y lejos de los servidores donde las rutas son correctas, simplemente cree un enlace simbólico para que su Mac encuentre el socket requerido, incluso cuando está buscando en el lugar equivocado. !

Si tiene /tmp/mysql.sock pero no /var/mysql/mysql.sock entonces...

cd /var 
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock

Si tiene /var/mysql/mysql.sock pero no /tmp/mysql.sock entonces...

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

Necesitará permisos para crear el directorio y el enlace, por lo tanto, prefije los comandos anteriores con sudo si es necesario.