PHP MSSQL · 3 min read · Oct 24, 2025
Habilitando MSSQL para PHP5 no Debian Lenny (teste)
Habilitando MSSQL para PHP5 no Debian Lenny (teste)
Recentemente, fiz uma instalação do Debian Etch 4.0 para prepará-lo para o ispconfig. Sabendo que tinha um site que precisava de suporte a MSSQL, tive que descobrir como realizar isso. Pode haver uma maneira mais fácil que eu não conheço, mas essa tarefa assustadora funcionou dessa forma.
Passo 1:
A primeira coisa que fiz foi usar o repositório de teste do debian. Para adicionar este repositório à sua instalação, faça o seguinte (prefiro usar o nano, mas você pode usar seu editor de escolha):
nano /etc/apt/sources.listAdicione estas entradas para que seu sources.list fique assim:
deb http://debian.ludost.net/debian/ testing main contrib non-free
deb-src http://debian.ludost.net/debian/ testing main contrib non-free
deb http://security.debian.org/ testing/updates main contrib
deb-src http://security.debian.org/ testing/updates main contribSaia e salve.
Passo 2:
Agora execute
apt-get updateAgora execute
apt-get dist-upgradeAgora estamos a caminho…
Passo 3:
apt-get install tsdodbcPasso 4:
Para compilar o pacote php5-mssql, você precisará do pacote freetds completo.
cd /usr/src/
mkdir -p /usr/src/freetds
cd /usr/src/freetds
wget ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
tar -zxvf freetds-stable.tgz
cd freetds-0.64
./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --enable-dbmfix --with-gnu-ld
make
make installSe você receber erros durante a instalação, execute isto:
apt-get install build-essential debhelperIsso deve resolver. Após isso, você deve ter um diretório /usr/local/freetds, contendo seu freetds recém-construído.
Passo 5:
Agora mude para seu diretório /usr/src para que possamos instalar os fontes do php5:
cd /usr/src
apt-get source php5Agora precisamos obter todas as dependências:
apt-get build-dep php5Passo 6:
Quando isso for concluído, mude o diretório para php5-5.2.5:
cd php5-5.2.5Agora emita a diretiva:
nano debian/modulelistProcure a linha que diz:
mysql MYSQLAcima dessa linha, digite:
mssql MSSQLSaia e salve.
Passo 7:
nano debian/rulesProcure a linha que diz:
--with-mysql=shared,/usrAcima dessa linha, digite:
--with-mssql=shared,/usr/local/freetds \Passo 8:
Finalmente, abra o arquivo debian/control e no final adicione:
Package: php5-mssql
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, ${php:Depends}, php5-common (= ${Source-Version})
Description: Módulo MSSQL para php5
Este pacote fornece um módulo para MSSQL usando FreeTDS.
.
PHP5 é uma linguagem de script embutida em HTML. Grande parte de sua sintaxe é emprestada
de C, Java e Perl, com algumas características únicas específicas do PHP.
O objetivo da linguagem é permitir que desenvolvedores web escrevam
páginas geradas dinamicamente rapidamente.Isso deve ser tudo.
Passo 9:
Agora execute o seguinte comando:
dpkg-buildpackageIsso levará algum tempo para terminar. Vá pegar uma xícara de café ou pegar o jornal e se atualizar sobre as notícias.
Passo 10:
Agora, quando isso estiver concluído, você terá um monte de arquivos .deb em seu diretório /usr/src, então mude para esse diretório:
cd /usr/srcO pacote que precisaremos é php5-mssql_5.2.5-3_i386.deb:
dkpg -i php5-mssql_5.2.5-3_i386.debPasso 11:
O último passo é garantir que você tenha o php5-sybase instalado.
apt-get install php5-sybaseAgora você pode configurar suas entradas DNS em /etc/freetds/freetds.conf e usar funções mssql_ no php :>)
Este guia foi encontrado na internet e derivado de php.net e dos fóruns do ubuntu. Fiz algumas pequenas alterações para tentar tornar o guia um pouco mais fácil de seguir. e adicionei a instrução para o ISPConfig abaixo:
Uma nota:
Se você planeja instalar o ISPConfig, deve editar o arquivo de configuração apache2.conf localizado em /etc/apache2:
cd /etc/apache2nano apache2.confEncontre a linha que diz:
User ${APACHE_RUN_USER}e
Group ${APACHE_RUN_GROUP}e mude para:
User www-data
Group www-dataSalve e saia.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.