Maneira mais fácil de ativar PHP e MySQL no Mac OS 10.6 (Snow Leopard), 10.7 (Lion), 10.8 (Mountain Lion)?

102

Qual é a maneira mais fácil de ativar PHP e MySQL no Mac OS 10.6 (Snow Leopard), 10.7 (Lion), 10.8 (Mountain Lion)?

Eu prefiro usar qualquer versão agrupada antes de fazer o download dos sites PHP ou MySQL. Isso também exclui MAMP e similares.

Sinto-me confortável na linha de comando do Terminal.

Matt Sephton
fonte

Respostas:

142

Abra um bom editor de texto (eu recomendo o TextMate, mas o TextWrangler ou vi ou nano gratuito também serve) e abra:

/etc/apache2/httpd.conf

Encontre a linha:

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

E descomente (remova o #).

Baixe e instale a versão mais recente do MySQL em mysql.com. Escolha a versão x86_64 para Intel (a menos que seu Mac Intel seja o Macbook Pro ou Macbook original, que não são chips de 64 bits. Nesses casos, use a versão x86 de 32 bits).

Instale todos os componentes do MySQL. Usando o painel pref, inicie o MySQL.

Em Sharing System Pref, ative (ou se já estiver ativado, ative / desative) o Web Sharing.

Agora você deve ter o Apache / PHP / MySQL em execução.

Em 10.4 e 10.5, era necessário modificar o arquivo php.ini para apontar para a localização correta de mysql.sock. Há relatos de que isso foi corrigido no 10.6, mas esse não parece ser o caso para todos nós, devido a alguns dos comentários abaixo.

TWLATL
fonte
10
se mais alguém está se perguntando onde está o php.ini, não há nenhum! mas você pode adicionar um /etccopiando /etc/php.ini.defaultpara/etc/php.ini
cregox
11
e a página "Funciona" está abaixo/Library/WebServer/Documents/index.html.en
cregox
1
No final, tive que copiar o arquivo php.ini.default para o php.ini, e os arquivos PHP começaram a ser executados como deveriam.
kiamlaluno
3
Para usar o MySQL, também tive que mudar o soquete padrão, que no meu caso era /tmp/mysql.sock (instalei o MySQL 5.5).
kiamlaluno
7
Além disso, depois de salvar o .conf, você pode simplesmente usar o comando em sudo apachectl restartvez de desligar o compartilhamento na web.
aaaidan
17

Para completar sua configuração ou MySQL:

sudo vim /etc/profile
  1. Adicionar alias

    alias mysql=/usr/local/mysql/bin/mysql
    alias mysqladmin=/usr/local/mysql/bin/mysqladmin
  2. Em seguida, defina sua senha de root

    mysqladmin -u root password 'yourPassword'
  3. Então você pode fazer o login com

    mysql -u root -p
mdskinner
fonte
Eu gosto disso! Em vez de bagunçar o PATH, adicione um alias +1
brutuscat
1
Além disso, lembre-se de fechar / reabrir sua sessão do Terminal para que seus aliases tenham efeito.
gravyface
4

Eu prefiro fortemente o HomeBrew ao invés do MacPorts para instalar o software da fonte.

O HomeBrew sequestra tudo em / usr / local / Cellar para não espalhar arquivos por todo o lugar. (Sim, MacPorts mantém tudo em / opt / local, mas requer acesso sudo e não confio em MacPorts com root.)

A instalação do MySQL é tão simples quanto:

brew install mysql
mysql_install_db

Para iniciar o mysql, em Terminal digite:

mysqld&

Existe uma maneira de iniciá-lo na inicialização, mas eu gosto de iniciá-lo manualmente.

Duque
fonte
"brew link mysql" criará vários links simbólicos em / usr / local / bin etc.
Duke,
Não tenho certeza se entendi o comentário sobre 'vomitar arquivos bagunçados'. MacPorts sequestra tudo em / opt / local, então parece equivalente. Suponho que, ocasionalmente, tenha visto algo colocado em / Applications / MacPorts (por exemplo, AquaTerm para gnuplot), mas esta é uma exceção muito rara e geralmente por uma boa causa (por exemplo, AquaTerm é um pacote .app), e mesmo assim ele o mantém organizado em um único diretório ...
Ethan
1
Ah, e acho mais fácil simplesmente adicionar / opt / local / bin ao meu $ PATH e -I / opt / local / include ao CPPFLAGS, -L / opt / local / lib ao LDFLAGS e não ter que lembrar para configurar links para cada pacote que é instalado ...
Ethan
Meu uso do link simbólico foi parcialmente baseado na ignorância; é completamente desnecessário. Eu simplesmente não confio em grandes scripts de instalação com root. E se você não acha que o MacPorts espalha arquivos por vários diretórios, basta olhar as instruções de desinstalação: guide.macports.org/chunked/…
Duke
4

É uma pasta invisível. Basta clicar em Command+ Shift+ G(leva você ao item de menu Ir para a pasta) e digitar /etc/.

Em seguida, ele o levará para dentro dessa pasta.

asdf1
fonte
3

Isso me ajuda muito:

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

Também funciona para Mac OS X Lion: D

.:EDITAR:. No meu caso, o prefepane só permite iniciar e parar o mysql, mas após alguns problemas eu o desinstalei. Se você precisa de um aplicativo para executar consultas e criar banco de dados, pode usar: Sequel Pro (é gratuito) ou Navicat

Se você precisar iniciar e parar o mysql em ~ / .bash_profile, você pode adicionar estas linhas:

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

Depois de recarregar o console, basta chamar:

$mysql_start 

ou

$mysql_stop 

agredindo a ação desejada. A esperança ajudou você.

sonhador
fonte
O pré-painel MySQL funciona para você no Lion? Ou seja, ele pode ligar / desligar o MySQL?
Matt Sephton
1
não preciso do pré-pãezinho, mas isso resolve sua dúvida? : stackoverflow.com/questions/3027479/…
workdreamer
Mas o pré-painel permite apenas iniciar e parar o mysql. Eu reeditei meu post porque aqui não está formatado.
workdreamer
1

Eu concordaria com Benjamin, ou instale MAMP ou MacPorts ( http://www.macports.org/ ). Manter a instalação do PHP separada é mais simples e evita bagunçar a instalação principal do PHP se você cometer algum erro!

MacPorts é um pouco melhor para instalar outros softwares, como ImageMagick. Veja uma lista completa de portas disponíveis em http://www.macports.org/ports.php

O MAMP realmente faz PHP, Apache e MySQL, portanto, quaisquer módulos PHP futuros que você queira precisarão ser habilitados manualmente. É incrivelmente fácil de usar.

simonrjones
fonte
0

Considerando que ainda não foi lançado, estou assumindo que é uma questão para antecipar ou você tem uma versão de desenvolvedor. Como Benjamin mencionou, o MAMP é a maneira mais fácil. No entanto, se você quiser uma instalação nativa, o processo deve ser como 10.5. O PHP vem instalado no OS X por padrão (nem sempre ativado para alguns), basta baixar a versão de 32 bits do MySQL, iniciar o Apache e você estará pronto para ir. Você pode ter que ajustar o Apache para PHP ou MySQL, dependendo de quais compilações estão presentes. Não precisei ajustar nada para que funcionasse.

machuga
fonte
Sem interesse - o Snow Leopard é compatível com 64 bits, então por que escolher o MySQL de 32 bits?
Matt Sephton de
1
O Leopard, e até mesmo o Tiger para a maioria das coisas em que acredito, são capazes de 64 bits. O MySQL de 64 bits tem alguns problemas com alguns outros pacotes, não diretamente relacionados ao PHP necessariamente, mas digamos que ele tenha tentado o Python posteriormente - o MySQL de 64 bits causa sérios problemas com o pacote MySQLDB. É completamente utilizável, mas nem todas as coisas ainda estão funcionando, infelizmente.
machuga
0

Para sua informação - se alguém tiver problemas para iniciar o Apache e obter erros sobre

/usr/sbin/apachectl: line 82: ulimit: open files: cannot modify limit: Invalid argument

é por causa de uma atualização recente do Apache no Snow Leopard. A correção é fácil, basta abrir /usr/sbin/apachectle definirULIMIT=""

http://blog.deversus.com/2010/11/mac-os-1065-apachectl-usrsbinapachectl-line-82-ulimit-open-files-cannot-modify-limit-invalid-argument/

cabgfx
fonte
0

Se você atualizou para o Mac OS X 10.8 Mountain Lion e já tinha um sistema funcionando, tudo o que você precisa fazer é reativar o PHP como na Etapa 1 da resposta escolhida acima.

Você também pode achar o seguinte Painel de preferências útil para gerenciar "compartilhamento da web" (servidor da web Apache), que substitui a funcionalidade do sistema removida no OS X 10.8: http://clickontyler.com/blog/2012/02/web-sharing-mountain -leão/

Eu também tive que adicionar novamente minha linha de inclusão de hosts virtuais ao httpd.conf

Matt Sephton
fonte
0

Além das versões nativas, mas você pode querer experimentar BitNami MAMP Stacks (isenção de responsabilidade, eu sou um dos desenvolvedores). Eles são pacotes completos e totalmente gratuitos de Apache, MySQL, PHP e várias outras bibliotecas e utilitários de terceiros que são úteis no desenvolvimento local. Em particular, eles são completamente independentes, de forma que você pode ter vários instalados ao mesmo tempo, com versões diferentes do Apache e do MySQL e eles não interferem uns nos outros. Você pode obtê-los em http://bitnami.org/stack/mampstack ou diretamente na loja de aplicativos do Mac OS X https://itunes.apple.com/app/mamp-stack/id571310406

Daniel Lopez
fonte
0

Ammps foi super fácil para mim e tem uma boa configuração baseada na web:

crizCraig
fonte
Eu prefiro as versões padrão empacotadas, por favor veja a pergunta.
Matt Sephton
0

Há um ótimo guia aqui:

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

No entanto, não funcionou para mim na primeira tentativa. Achei esta dica: execute "httpd -t" no Terminao para verificar a sintaxe dos seus arquivos de configuração. Acontece que usar copiar e colar do tutorial introduziu alguns caracteres estranhos. Depois de consertar isso, funcionou muito bem. Existem alguns links do guia para adicionar o MySQL também.

Isso funcionou muito melhor para mim do que o MAMP. Com o MAMP, eu estava tendo atrasos de cerca de 20 segundos ou mais antes que as alterações no arquivo .php fossem refletidas no navegador quando você atualizava, mesmo se você limpasse o cache, histórico, cookies, etc.

Esse problema foi resolvido no MAMP PRO, mas o MAMP PRO tinha um novo problema: os arquivos .php seriam baixados em vez de serem renderizados como uma página no navegador! Entrei em contato com o suporte e eles não sabiam o que estava acontecendo.

O servidor Apache embutido não tinha nenhum desses problemas. Definitivamente, o caminho a percorrer. O guia abaixo é quase idêntico ao anterior, mas contém comentários do usuário que são úteis:

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

Vern Jensen
fonte