¿La forma más fácil de activar PHP y MySQL en Mac OS 10.6 (Snow Leopard), 10.7 (Lion), 10.8 (Mountain Lion)?

102

¿Cuál es la forma más sencilla de activar PHP y MySQL en Mac OS 10.6 (Snow Leopard), 10.7 (Lion), 10.8 (Mountain Lion)?

Preferiría usar cualquier versión empaquetada antes de recurrir a la descarga desde los sitios web PHP o MySQL. Eso también descarta MAMP y similares.

Me siento cómodo en la línea de comandos en la Terminal.

Matt Sephton
fuente

Respuestas:

142

Abra un buen editor de texto (recomendaría TextMate, pero el TextWrangler gratuito o vi o nano también lo harán) y abra:

/etc/apache2/httpd.conf

Encuentra la línea:

"#LoadModule php5_module        libexec/apache2/libphp5.so"

Y descomentarlo (eliminar el #).

Descargue e instale la última versión de MySQL desde mysql.com. Elija la versión x86_64 para Intel (a menos que su Mac Intel sea la Macbook Pro o Macbook original, que no son chips de 64 bits. En esos casos, use la versión x86 de 32 bits).

Instale todos los componentes de MySQL. Usando el panel de preferencias, inicie MySQL.

En Preferencias del sistema para compartir, active (o si ya estaba activado, desactívelo / encienda) Compartir web.

Ahora debería tener Apache / PHP / MySQL en ejecución.

En 10.4 y 10.5 fue necesario modificar el archivo php.ini para que apunte a la ubicación correcta de mysql.sock. Hay informes de que esto se solucionó en 10.6, pero ese no parece ser el caso para todos nosotros, dados algunos de los comentarios a continuación.

TWLATL
fuente
10
si alguien más se pregunta dónde está php.ini, ¡no hay ninguno! pero puede agregar uno /etccopiando /etc/php.ini.defaulta/etc/php.ini
cregox
11
y la página "Funciona" está debajo/Library/WebServer/Documents/index.html.en
cregox
1
Al final, tuve que copiar el archivo php.ini.default en php.ini, y los archivos PHP comenzaron a ejecutarse como deberían.
kiamlaluno
3
Para usar MySQL, también tuve que cambiar el socket predeterminado, que en mi caso era /tmp/mysql.sock (instalé MySQL 5.5).
kiamlaluno
7
Además, después de guardar el .conf, puede usar el comando en sudo apachectl restartlugar de activar el uso compartido web.
aaaidan
17

Para completar su configuración o MySQL:

sudo vim /etc/profile
  1. Agregar alias

    alias mysql=/usr/local/mysql/bin/mysql
    alias mysqladmin=/usr/local/mysql/bin/mysqladmin
  2. Luego configure su contraseña de root

    mysqladmin -u root password 'yourPassword'
  3. Entonces puedes iniciar sesión con

    mysql -u root -p
mdskinner
fuente
¡Me gusta esto! En lugar de jugar con el PATH, agregue un alias +1
brutuscat
1
Además, recuerde cerrar / volver a abrir su sesión de Terminal para que sus alias surtan efecto.
gravyface
4

Prefiero HomeBrew sobre MacPorts para instalar software desde la fuente.

HomeBrew secuestra todo en / usr / local / Cellar para que no arroje archivos por todas partes. (Sí, MacPorts mantiene todo en / opt / local, pero requiere acceso sudo, y no confío en MacPorts con root).

Instalar MySQL es tan simple como:

brew install mysql
mysql_install_db

Para iniciar mysql, en Terminal escriba:

mysqld&

Hay una forma de iniciarlo al arrancar, pero me gusta hacerlo manualmente.

Duque
fuente
"brew link mysql" creará una serie de enlaces simbólicos en / usr / local / bin, etc.
Duke
No estoy seguro de entender el comentario de 'arrojar archivos desordenadamente'. MacPorts secuestra todo en / opt / local, por lo que parece equivalente. Supongo que ocasionalmente he visto algo colocado en / Aplicaciones / MacPorts (por ejemplo, AquaTerm para gnuplot), pero esta es una excepción muy poco común y generalmente por una buena causa (por ejemplo, AquaTerm es un paquete .app), e incluso entonces lo mantiene organizado en un solo directorio ...
Ethan
1
Ah, y me resulta más fácil simplemente agregar / opt / local / bin a mi $ PATH, y -I / opt / local / include a CPPFLAGS, -L / opt / local / lib a LDFLAGS, y luego no tener que recordar para configurar enlaces para cada paquete que se instala ...
Ethan
Mi uso del enlace simbólico se basó parcialmente en la ignorancia; es completamente innecesario. Simplemente no confío en grandes scripts de instalación con root. Y si no cree que MacPorts distribuya archivos en muchos directorios, solo mire las instrucciones de desinstalación: guide.macports.org/chunked/…
Duke
4

Es una carpeta invisible. Simplemente presione Command+ Shift+ G(lo lleva al elemento de menú Ir a la carpeta) y escriba /etc/.

Luego lo llevará al interior de esa carpeta.

asdf1
fuente
3

Esto me ayuda mucho:

http://maestric.com/doc/mac/apache_php_mysql_snow_leopard

También funciona para Mac OS X Lion: D

.:EDITAR:. En mi caso, el prefepane solo permite iniciar y detener mysql, pero después de algunos problemas lo desinstalé. Si necesita una aplicación para ejecutar consultas y crear DB, puede usar: Sequel Pro (es gratis) o Navicat

Si necesita iniciar y detener mysql en ~ / .bash_profile, puede agregar estas líneas:

#For MySQL
alias mysql_start="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias mysql_stop="/Library/StartupItems/MySQLCOM/MySQLCOM stop"

Después de recargar la consola, simplemente llame:

$mysql_start 

o

$mysql_stop 

agrediendo la acción deseada. Hope te ayudó.

soñador
fuente
¿El prefpane de MySQL funciona para usted en Lion? Es decir, ¿puede activar / desactivar MySQL?
Matt Sephton
1
no necesito el prefpane, pero esto resuelve tu pregunta? : stackoverflow.com/questions/3027479/…
workdreamer
Pero el prefpane solo le permite iniciar y detener mysql. Reedité mi publicación porque aquí no está formateada.
workdreamer
1

Estoy de acuerdo con Benjamin, instale MAMP o MacPorts ( http://www.macports.org/ ). Mantener la instalación de PHP separada es más simple y evita estropear la instalación principal de PHP si comete algún error.

MacPorts es un poco mejor para instalar otro software, como ImageMagick. Consulte una lista completa de puertos disponibles en http://www.macports.org/ports.php

MAMP solo hace PHP, Apache y MySQL, por lo que cualquier módulo PHP futuro que desee deberá habilitarse manualmente. Sin embargo, es increíblemente fácil de usar.

simonrjones
fuente
0

Teniendo en cuenta que aún no se ha lanzado, supongo que esta es una pregunta con anticipación o que tiene una compilación de desarrollador. Como mencionó Benjamin, MAMP es la forma más fácil. Sin embargo, si desea una instalación nativa, el proceso debería ser como 10.5. PHP viene instalado en OS X de forma predeterminada (no siempre está activado para algunos), simplemente descargue la versión de 32 bits de MySQL, inicie Apache y debería estar listo. Es posible que deba modificar Apache para PHP o MySQL, según las compilaciones que estén presentes. No tuve que modificar nada para que funcionara.

machuga
fuente
Fuera de interés: Snow Leopard es compatible con 64 bits, así que ¿por qué elegir MySQL de 32 bits?
Matt Sephton
1
Leopard, e incluso Tiger para la mayoría de las cosas, creo, son capaces de 64 bits. MySQL de 64 bits tiene algunos problemas con algunos otros paquetes, no necesariamente relacionados directamente con PHP, pero digamos que probó Python en el futuro: MySQL de 64 bits causa serios problemas con el paquete MySQLDB. Es completamente utilizable, pero lamentablemente no todas las cosas se han puesto al día todavía.
machuga
0

Si actualizó a Mac OS X 10.8 Mountain Lion y anteriormente tenía un sistema en funcionamiento, todo lo que debe hacer es volver a habilitar PHP como en el Paso 1 de la respuesta elegida anteriormente.

También puede encontrar el siguiente panel de preferencias útil para administrar "compartir web" (servidor web Apache), que reemplaza la funcionalidad del sistema eliminada en OS X 10.8: http://clickontyler.com/blog/2012/02/web-sharing-mountain -león/

También tuve que volver a agregar mi línea de inclusión de hosts virtuales a httpd.conf

Matt Sephton
fuente
0

Además de las versiones nativas, es posible que desee probar BitNami MAMP Stacks (descargo de responsabilidad, soy uno de los desarrolladores). Son paquetes todo en uno completamente gratuitos de Apache, MySQL, PHP y varias otras bibliotecas y utilidades de terceros que son útiles para el desarrollo local. En particular, son completamente autónomos, por lo que puede tener varios instalados al mismo tiempo, con diferentes versiones de Apache y MySQL y no interferirán entre sí. Puede obtenerlos en http://bitnami.org/stack/mampstack o directamente en la tienda de aplicaciones de Mac OS X https://itunes.apple.com/app/mamp-stack/id571310406

Daniel Lopez
fuente
0

ammps fue muy fácil para mí y tiene una buena configuración basada en web:

crizCraig
fuente
Prefiero las versiones estándar empaquetadas, consulte la pregunta.
Matt Sephton
0

Hay una gran guía aquí:

https://discussions.apple.com/docs/DOC-3083

Sin embargo, no funcionó para mí en el primer intento. Encontré este consejo: ejecute "httpd -t" en Terminao para verificar la sintaxis de sus archivos de configuración. Resulta que usar copiar y pegar del tutorial introdujo algunos personajes extraños. Después de arreglar esto, funcionó muy bien. También hay algunos enlaces de la guía para agregar MySQL.

Esto funcionó mucho mejor para mí que MAMP. Con MAMP, tenía retrasos de unos 20 segundos antes de que los cambios en el archivo .php se reflejaran en el navegador cuando actualizaba, incluso si borraba el caché, el historial, las cookies, etc.

Este problema se resolvió en MAMP PRO, pero MAMP PRO tenía un nuevo problema: los archivos .php se descargarían en lugar de representarlos como una página en el navegador. Me puse en contacto con el soporte y no sabían lo que estaba pasando.

El servidor Apache integrado no tenía ninguno de estos problemas. Definitivamente el camino a seguir. La siguiente guía es casi idéntica a la anterior, pero tiene comentarios de usuarios que son útiles:

http://osxdaily.com/2012/09/02/start-apache-web-server-mac-os-x/#comment-572991

Vern Jensen
fuente