PHP instalado en MacPorts, ahora no puede interactuar con MySQL – Mac OS X

Tenía la versión estándar de PHP que viene incluida con Mac OS X funcionando perfectamente, pero quería actualizar a la nueva versión, así que usé MacPorts y todo salió bien. Luego .conf mi archivo .conf y lo revisé, y ahora mi versión de PHP se actualiza a la última versión.

Sin embargo, después de ejecutar un proyecto de PHP en el que estoy trabajando, ahora parece que no puedo hacer interfaz con MySQL, que estaba trabajando con la instalación estándar de PHP que viene incluida con Mac OS X (nota: originalmente instalé MySQL desde su instalador desde su página principal).

Mi pregunta es esta: ¿hay alguna manera de hacer que MacPort PHP funcione con mi vieja instalación de MySQL?

    ¿Has instalado el paquete php5-mysql de MacPorts?

    La instalación predeterminada de PHP en MacPorts es relativamente mínima, pero hay muchos módulos complementarios disponibles.

    Como señaló Alnitak en los comentarios, MacPorts 1.9.2 no tiene una variante “mysql”. Sin embargo, hay una manera de evitarlo.

    El puerto php5-mysql tiene una variante + mysql5, pero hay una forma aún mejor de resolver el problema.

    Esta es una gran publicación de blog http://top-frog.com/2009/08/26/macports-php5-mysql-mysqlnd/ que solo establece la misma frase que la secuencia de comandos posterior a la instalación de php5-mysql:

    To use mysqlnd with a local MySQL server, edit /opt/local/etc/php5/php.ini and set mysql.default_socket, mysqli.default_socket and pdo_mysql.default_socket to /opt/local/var/run/mysql5/mysqld.sock

    Entonces, si está usando el servidor MySQL nativo de MacOS X Server, ese socket sería fácil de obtener ejecutando ps ax | grep mysql ps ax | grep mysql . Para mí fue /var/mysql/mysql.sock .

    Y, por supuesto, siempre puedes cambiar el socket en /etc/my.cnf

    En un momento de locura, lo resolví.

    Se eliminó PHP de la existencia utilizando MacPorts y luego se volvió a instalar, pero esta vez se agregó + mysql a la instalación.

    Una vez hecho esto, instalé php5-mysql usando MacPorts también. ¡Entonces funcionó!

    También fui al mismo problema con mysql y php5 instalados. Afortunadamente, puedo solucionarlo siguiendo los consejos de Vlads; de una manera un poco diferente. Tenga en cuenta que el puerto php5-mysql NO ES NECESARIO

    Pruebe /usr/bin/php -i|grep mysql|grep socket que da como resultado

     mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock mysqli.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock pdo_mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock 

    Tenga en cuenta que php está apuntando al lugar equivocado; debería ser /opt/local/var/run/mysql5/mysqld.sock

    Solución: crea un enlace simbólico para corregir la ruta

     sudo mkdir /var/mysql sudo ln -s /opt/local/var/run/mysql5/mysqld.sock /var/mysql/mysql.sock