MSSQL em Unix and Linux com FreeTDS
Fala ai pessoal, quebrei a cabeça pra configurar o FreeTDS em meu FreeBSD(UNIX), então resolvi a compartilha com todos vcs sobre a instalação desta importante ferramenta que abre a conexão MSSQL.
Pensamento de hoje:
Conhecimento é algo que ninguém te tira! Algo que é só seu!
Portanto junte o Maximo de conhecimento possível!
Mas deixando o momento de reflexão, vamos colocar a mão na passa.
Procure um lugar reservado pra fazer downloads, procuro me certificar em qual o diretório eu estou, por padrão procure estar dento do /root ou /home/seu_usuario_root
Vamos precisar fazer downloads:
FreeTDS (www.freetds.org)
Sempre acesso o site e pego o link pelo navegado e colo na linha de comando usando o comando abaixo para fazer o download para dentro do server :
fetch: ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
quando terminar, precisamos descompactar então uso o comando:
tar zxfv nomedoarquivo.tgz
ficando assim
tar zxfv freetds-stable.tgz
PHP (www.php.net)
Mesma esquema para o php
fetch http://www.php.net/get/php-5.2.5.tar.bz2/from/br2.php.net/mirror
descompactando
tar –zxfv mirror
Neste ponto vc deve ter a pasta do freetds-0.64 e o php-5.2.5 dentro onde vc baixou.
Agora vamos configurar , copilar e instalar cada um deles.
Com o FreeTDS
Entre dentro da pasta e de o comando
Quando terminar de configurar vamos copilar e instalar:
make && make install
Feito isso ele deve instalar o freetds dento do /usr/local/freetds
Vamos fazer os passos com o PHP
Ente dentro da pasta do php
Cd caminho/nomed pasta
Estas opções de configuração não precisa ser bem assim, essas são as necessidades que eu tenho, devem ser diferentes das suas, o que precisa ser feito é disser ao php que ele deve usar as apis do freetds como drive pra conexão com M$SQL com o comando --with-mssql=/usr/local/freetds junto com o ./configure, habilitei algumas coisas como o mssql, zlib, se der erro, vai tirando tudo e minimizando suas possibilidades de erro.
Próximo passo: Copilar e instalar o PHP.
Make && make install
Pronto tudo instalado.
Precisamos agora configurar o freetds.conf.
Dentro do /usr/local/freetds/etc tem o arquivo freetds.conf
Neste ponto tudo esta perfeitamente correto, precisamos apenas reiniciar o apache para que tenha todas as configurações aplicadas.
apachectl restart
Agora é só alegria!!! Viu como foi perfeitamente fácil fazer isso!!
Mais uma dica! Quando tiver programando em php e chamar a função que abre a conexão com o mssql, vc deve passar o caminho feito lá no freetds.conf, nome que vc colocou de minha conexão assim: [minhaconexao].
Ficando assim: mssql_connect ("minhaconexao","usuario","senha");
Aqui também vai um Script que fiz pra testar.
Espero que tenha ficado muito bem explicado. Qualquer coisa entra em contato.
Neste artigo vou ensinar como instalar o FreeTDS para que assim possa usar o M$SQL em uma plataforma que seja Unix ou Linux. Passo a Passo.
Pensamento de hoje:
Conhecimento é algo que ninguém te tira! Algo que é só seu!
Portanto junte o Maximo de conhecimento possível!
Mas deixando o momento de reflexão, vamos colocar a mão na passa.
Procure um lugar reservado pra fazer downloads, procuro me certificar em qual o diretório eu estou, por padrão procure estar dento do /root ou /home/seu_usuario_root
Vamos precisar fazer downloads:
FreeTDS (www.freetds.org)
Sempre acesso o site e pego o link pelo navegado e colo na linha de comando usando o comando abaixo para fazer o download para dentro do server :
fetch: ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
quando terminar, precisamos descompactar então uso o comando:
tar zxfv nomedoarquivo.tgz
ficando assim
tar zxfv freetds-stable.tgz
PHP (www.php.net)
Mesma esquema para o php
fetch http://www.php.net/get/php-5.2.5.tar.bz2/from/br2.php.net/mirror
descompactando
tar –zxfv mirror
Neste ponto vc deve ter a pasta do freetds-0.64 e o php-5.2.5 dentro onde vc baixou.
Agora vamos configurar , copilar e instalar cada um deles.
Com o FreeTDS
Entre dentro da pasta e de o comando
./configure --with-tdsver=7.0 --enable-msdblib --enable-dbmfix --with-gnu-ld --enable-shared --enable-static --prefix=/usr/local/freetds
Quando terminar de configurar vamos copilar e instalar:
make && make install
Feito isso ele deve instalar o freetds dento do /usr/local/freetds
Vamos fazer os passos com o PHP
Ente dentro da pasta do php
Cd caminho/nomed pasta
./configure --with-apxs2=/usr/local/sbin/apxs --with-mssql=/usr/local/freetds --with-mysql --enable-libxml --with-zlib --with-bz2 --with-gd=/usr/local --with-freetype-dir=/usr/local --enable-calendar --enable-exif
Estas opções de configuração não precisa ser bem assim, essas são as necessidades que eu tenho, devem ser diferentes das suas, o que precisa ser feito é disser ao php que ele deve usar as apis do freetds como drive pra conexão com M$SQL com o comando --with-mssql=/usr/local/freetds junto com o ./configure, habilitei algumas coisas como o mssql, zlib, se der erro, vai tirando tudo e minimizando suas possibilidades de erro.
Próximo passo: Copilar e instalar o PHP.
Make && make install
Pronto tudo instalado.
Precisamos agora configurar o freetds.conf.
Dentro do /usr/local/freetds/etc tem o arquivo freetds.conf
[global] # TDS protocol version tds version = 8.0 port = 1433 try server login = yes try domain login = no dump file = /tmp/freetds.log debug level = 10 timeout = 10; connect timeout = 10; [minhaconexao] host = 192.168.10.2 //ip do server onde vc tem o SQL port = 1433 // porta do SQL tds version = 8.0 // Versão isso para o SQL 2000 e para o 7.0 coloca 7.0, o 2005 não sei nada sobre ele ainda.
Neste ponto tudo esta perfeitamente correto, precisamos apenas reiniciar o apache para que tenha todas as configurações aplicadas.
apachectl restart
Agora é só alegria!!! Viu como foi perfeitamente fácil fazer isso!!
Mais uma dica! Quando tiver programando em php e chamar a função que abre a conexão com o mssql, vc deve passar o caminho feito lá no freetds.conf, nome que vc colocou de minha conexão assim: [minhaconexao].
Ficando assim: mssql_connect ("minhaconexao","usuario","senha");
Aqui também vai um Script que fiz pra testar.
<?php $conec = mssql_connect ("minhaconexaono_freeTDS","usuario","senha"); if ($conec) { $bco = mssql_select_db ("controladoria", $conec); if ($bco) { echo "Conectou perfeitamente no banco de dados"; } else { echo "Conectou, mas o banco que vc informou não existe, certifique se ele realmente existe"; } } else { echo "Não tá funcionando não, verifique se vc colocou o nome da conexão feita no freetds, pra conectar "; } ?>
Espero que tenha ficado muito bem explicado. Qualquer coisa entra em contato.
Neste artigo vou ensinar como instalar o FreeTDS para que assim possa usar o M$SQL em uma plataforma que seja Unix ou Linux. Passo a Passo.
Novo Comentário: