Instalando Apache PHP MySQL no Windows 3

Apache - PHP - MySQL

PHP  MySQL no Windows 3

MySQL, como você já deve saber, é um gerenciador de banco de dados. O funcionamento dele no sistema não será abordado aqui, apenas as idéias básicas de como criar os bancos de dados a serem usados com o PHP, além da instalação.

Procure a versão para Windows, na página do projeto:

Procure a versão para Windows, na página do projeto:

www.mysql.com

Neste tutorial estou usando a 5.0.37. Na página de download há um pacote “mysql-essential-5.0.37-win32.msi” e outro maior, “mysql-5.0.37-win32.exe”. O segundo possui mais algumas coisas, documentação adicional, etc., mas na prática não fará tanta diferença, para os recursos básicos. Se você não quiser baixar o pacote maior, pode optar pelo “essential”, “essencial”.

O executável de instalação apresenta a mesma interface da instalação do Apache e do PHP, ou seja, não tem muito segredo, basta ir clicando em Avançar. Deixe todas as opções que você não souber do que se trata, com os valores padrões. No final da instalação ele poderá pedir um cadastro no MySQL.com, normalmente pule essa parte (clicando em “Skip Sign-Up”).

Instalado, na última tela de instalação ele exibirá uma caixinha de marcação para configurar logo ao concluir. Deixe-a marcada. Aparecerá um assistente, no mesmo estilo da instalação. Este assistente de configuração poderá ser executado a qualquer momento depois, bastando ir em “Iniciar > Programas > MySQL > MySQL Server 5.0 > MySQL Server Instance Config Wizard”.

Esse assistente permite definir diversas coisas importantes, que poderão causar o funcionamento não esperado do servidor se alteradas indevidamente. Deixe o padrão para o que não souber do que se trata, apenas vá clicando em “Avançar” (“Next”).

Num ponto ele pede a ativação de conexões TCP/IP, e permite escolher a porta onde ele ficará disponível, dando como padrão a 3306. Deixe esse valor, e se for o caso, libere essa porta para aceitar conexões de entrada no seu firewall. Mesmo fazendo a configuração num computador sem rede nem Internet, comigo não funcionou corretamente quando deixei desmarcada, o PHP não conseguia se comunicar com o MySQL:

 

Janela MySQL Server

Mais algumas telas ele dará a opção de incluir o caminho do MySQL na variável de ambiente “Path” do Windows. É bom marcá-la, para que você possa chamar os executáveis do MySQL a partir de qualquer prompt, em qualquer pasta. Basta marcar a opção “Include Bin Directory in Windows PATH”:

 

Na próxima tela deve-se definir a senha de root, que seria o administrador do MySQL. Se você mexe com PHP deve saber que para acessar um banco de dados é necessário fornecer um nome de usuário e senha válidos para aquele banco; você poderá usar o “root” e a senha definida aqui, ou outra conta. Justamente, para criar outras contas você precisará do root, e para alterar as configurações ou criar novos bancos de dados, também. Portanto, anote esta senha em um local seguro:

 

 

Se você perdê-la, bastará desinstalar e instalar novamente o MySQL (e depois configurar as permissões dos bancos de dados novamente).

Agora vem a última parte da configuração. Se algo der errado aqui, o MySQL poderá não funcionar corretamente. Apenas clique em “Execute” e cruze os dedos 😉

 

Se tudo ocorreu bem, você verá uma tela como a exibida acima. Se ele não conseguir obter acesso à porta definida na instalação (por padrão, a 3306), ele poderá exibir esta mensagem:

 

 

 

Clique em “Retry” quantas vezes forem necessárias, para tentar a configuração. Libere conexões de entrada na porta 3306, pelo seu firewall, se for o caso. Se clicar em “Skip” a configuração falhará, e você deverá executar o assistente de configuração novamente depois.

Em instalações e reinstalações eu tive problemas, ele nunca conseguia atribuir as permissões corretamente, dizendo que a porta estava em uso, mesmo ela estando liberada no firewall e com todos os outros programas fechados. A melhor saída que encontrei, em caso de problemas desse tipo, foi ficar clicando no “Retry” várias, várias vezes.

Se ainda assim não der, desinstale o MySQL, apague a pasta “MySQL” da pasta “Arquivos de programas”, reinicie o computador e inicie a instalação novamente. É algo tedioso, mas se falhar nesta tela o serviço não será iniciado corretamente e os scripts PHP não poderão usar os bancos de dados. Talvez você dê sorte e ele funcione de primeira; estou abordando esta parte pois não sei o que houve, comigo demorou muito até funcionar da primeira vez.

Feito isso, o servidor de banco de dados MySQL será configurado para iniciar automaticamente com o Windows. Você pode alterar esse comportamento, para ele e para o Apache, no console de serviços do Windows (“Iniciar > Executar > services.msc”). Se seu computador tem pouca memória, você pode preferir iniciá-los apenas manualmente, quando necessário, para que não sejam iniciados sempre junto com o Windows. Com 256 MB e Windows XP não há muito o que reclamar não, dá até para deixar estes serviços ativos, mesmo que você não mexa com PHP em toda sessão. Uma questão é sobre a abertura da porta 3306 para o MySQL, se você mantiver acesso à Internet no computador diretamente (sem passar por um roteador, proxy ou outro firewall). Se for o caso você pode desativar o uso do TPC/IP na configuração do MySQL, e tentar acessá-lo nos scripts locais (comigo não funcionou), ou então deixar o serviço “MySQL” no services.msc desativado, e só iniciá-lo quando for testar.

Dica: para evitar que um serviço no Windows seja iniciado automaticamente, abra o console de serviços, indo em “Iniciar > Executar” e digitando “services.msc”. Dê um duplo clique no serviço desejado e escolha o modo de inicialização “manual”. Para iniciá-lo depois, você pode ir nesse console de serviços, selecionar o item desejado e clicar em “Iniciar”, ou então via linha de comando. Digite num prompt ou no “Executar”: net start serviço para iniciar um serviço, e net stop serviço para pará-lo. Por exemplo, net start mysql, para iniciar o servidor MySQL quando ele não estiver sendo iniciado automaticamente.

Ativando o MySQL no PHP

Instalado o MySQL, falta agora configurar o PHP. Na instalação típica no Windows, o PHP não instala nenhuma das extensões adicionais. Para que o MySQL possa ser usado em conjunto com o PHP, a extensão MySQL deverá ser instalada e carregada. Se você baixou o arquivo zipado do PHP e fez todo o processo manual, deverá agora incluir a DLL da extensão MySQL e configurar o php.ini para encontrá-la. Se você usou o instalador do pacote “.msi”, ele pode fazer isso automaticamente. Com o PHP instalado, abra o instalador dele novamente, e quando solicitado, clique em “Change”, para alterar os componentes instalados. Se preferir, acesse o painel de controle “Adicionar ou remover programas” do Windows, localize o PHP e clique em “Alterar” (e não em “Remover”). Na seção dos componentes, na categoria “Extensions”, localize o item “MySQL”, clique no ícone de um disco ao lado dele, e clique na opção “Will be installed on local hard drive”. Veja:Só

Fazendo isso, o PHP instalará suporte ao MySQL. Mas você ainda deverá ativá-lo no php.ini, para que efetivamente, funcione. Localize a linha “;extension=php_mysql.dll” e retire o comentário dela:

para desencargo de consciência, localize também a seção [MySQL] (no arquivo php.ini), e veja se o item “mysql.allow_persistent” está ativo, com o valor “On” (se não estiver, ative-o então):

mysql.allow_persistent = On

Se você fizer a instalação manual, deverá colocar a DLL “php_mysql.dll” na pasta de extensões do PHP; normalmente, essa pasta chama-se “ext” e fica dentro da pasta do PHP. Ao usar o instalador dele, ele já copia o arquivo para essa pasta.

Dica: se você pretende instalar suporte ao MySQL diretamente, pode selecionar a extensão “MySQL” já durante a instalação do PHP. Neste tutorial vimos dessa forma por questões didáticos.