VirtualBox + Apache + PHP + SQL Server
Que tal programar no Linux usando PHP + SQL Server 2005? É isso mesmo, neste artigo vou ensinar desde como instalar o Windows numa máquina virtual até a conexão com o SQL via PHP, que rodará no Linux.
Primeiros passos
O cenário
No título fica um pouco confuso, então vou descrever como vai funcionar exatamente, daí você decide se continua lendo ou para por aqui.Bom, primeiramente vou mostrar como virtualizar o Windows no Linux usando o VirtualBox. Depois mostrarei como compilar o Apache, o PHP e o FreeTDS - que é responsável pela conexão entre o Linux e o SQL Server (ou MSSQL).
O motivo de utilizarmos uma máquina virtual com o Windows é que não consegui, e acho que não existe como, rodar o MSSQL diretamente no Linux, seja com o Wine ou com outro qualquer.
O que vamos precisar?
Vou colocar todos os links de uma vez para que você possa ir baixando os arquivos enquanto termina de ler o artigo:- VirtualBox - Nada impede que você use outro virtualizador, vou mostrar esse pois considero mais fácil de mexer e bem rápido.
- Apache - Nesse caso não tem problema você usar um pacote pré-compilado para a sua distribuição, pois não requer parâmetros adicionais.
- PHP - Esse teremos que compilar mesmo, pois vamos precisar setar alguns parâmetros que, muito dificilmente, vem habilitados por padrão nos pacotes pré-compilados.
- FreeTDS - Bendita ferramenta que vai nos ajudar a conectar ao MSSQL.
Fora estes downloads, eu parto do pressuposto que você possui um CD do Windows e do SQL Server e sabe instalar no Windows, pois estas instalações não serão abordadas neste artigo.
Como foi testado?
Tudo o que está neste artigo foi testado (e é usado diariamente) em meu notebook:- Toshiba Satellite A135
- Processador Intel Dual-Core 1.8GHz
- Memória DDR2 1.5 GB
- Slackware 12.1
- Kernel 2.6.24
- Windows XP SP2
- SQL Server 2005 Express
Estranho que o ODBC no PHP não tenha funcionado. Eu conheço o FreeTDS por fazer funcionar esse tipo de conexão exatamente com o ODBC. Você instalou o UnixODBC?
Tb não recomendaria Windows XP. Um Windows Server seria mais adequado.