<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>La Miscela &#187; FreeTDS</title>
	<atom:link href="http://www.lamiscela.net/category/freetds/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lamiscela.net</link>
	<description>Everything joined and mixed</description>
	<lastBuildDate>Tue, 17 Aug 2010 00:59:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Ubuntu + FreeTDS = SQL Server 2005 Conectado</title>
		<link>http://www.lamiscela.net/2009/07/13/ubuntu-freetds-sql-server-2005-conectado/</link>
		<comments>http://www.lamiscela.net/2009/07/13/ubuntu-freetds-sql-server-2005-conectado/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 22:46:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeTDS]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[SQLServer]]></category>

		<guid isPermaLink="false">http://www.lamiscela.net/?p=396</guid>
		<description><![CDATA[Olá pessoal!
Na ultima sexta-feira tive o imenso prazer de voltar a brincar na plataforma do pinguim. (Para quem não sabe fui um feliz sysadmin rodando Debian nos servidores e Ubuntu nas estações por 4 anos, depois de 6 meses usando Win Server nos servidores e WinXP nas estações pedi demição).
Tarefa: Fazer com que uma aplicação [...]]]></description>
			<content:encoded><![CDATA[<p>Olá pessoal!</p>
<p>Na ultima sexta-feira tive o imenso prazer de voltar a brincar na plataforma do pinguim. (Para quem não sabe fui um feliz sysadmin rodando Debian nos servidores e Ubuntu nas estações por 4 anos, depois de 6 meses usando Win Server nos servidores e WinXP nas estações pedi demição).</p>
<p><em><strong>Tarefa</strong></em>: Fazer com que uma aplicação rodando sob Apache 2.2 + PHP 5 se connect em um servidor SQLServer 2005 como seu SGBD padrão. Até aí tudo bem, pensei se ambos os servidores estiverem na internet ta resolvido, a conexão vai ser via http mesmo, sem stress, ao invéz de usar mysql/mysqli uso mssql e boas, não ha muito de diferente a fazer.</p>
<p>Mas como sempre o manganal aqui se precipitiou no julgamento e descobriu que o SQL Server não estava disponível com um endereço http, como um estalo pensei "Vixe fudeu!".</p>
<p>Bom, comecei a juntar pedaços do que eu precisava saber para fazer com que o Ubuntu se conectasse via rede diretamente em um servidor SQL Server, e nessa pesquisa descobri o FreeTDS, que deixa essa tarefa bem mais fácil.</p>
<p>Com o passar dos anos, fui deixando de mecher com linux, depois que comprei um Mac, uso muito a linha de comando com Rails, mas nem se compara as aquelas incansáveis horas que passava na frente de uma tela preta, recompilando kernel e pacote, procurando .deb etc. Ai pensei, Ubuntu mamão com açucar, dou logo um <em><strong>sudo apt-get install FreeTDS</strong></em> ele faz tudo pra mim e eu saio pro abraço, afinal era sexta-feira a noite pô.</p>
<p>Novamente estava enganado, aparentemente a instalação via apt-get não funciona e não instala o pacote FreeTDS corretamente, foi assim que tirei a poeira das teclas <em><strong>M A K E</strong></em>. Hehehe, isso mesmo, a seguir vou dar o caminho para você baixar, compilar e installar o FreeTDS "compretim" como dizem os contarrâneos.</p>
<p>Ps: Não vou me apegar aos comandos do linux, nem na configuração do SQL Server, basta saber que o SQL Server deve estar aceitando conexões remotas,  tenha um usuário e senha cadastrado (no meu caso usa a <em><strong>sa</strong></em> mesmo) e com os protocolos <em><strong>TCP/IP</strong></em> ativos e ouvindo a porta <em><strong>1433</strong></em></p>
<p>1 - Abra o terminal e no seu diretório home crie uma pasta chamada freetds.</p>
<p><em><strong>mkdir -v freetds</strong></em></p>
<p>2 - Dentro do diretorio freetds, digite o seguinte comando para obter a versão mais rescente do freetds</p>
<p><em><strong>wget http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz</strong></em></p>
<p>3 - Em seguinda extraia o arquivo com o comando</p>
<p><em><strong>tar -zxvf freetds-stable.tgz</strong></em></p>
<p>4 - Agora dentro do diretório com os fontes do freetds rode o seguinte comando (Esse comando demora um cadim)</p>
<p><em><strong>sudo ./configure --with-tdsver=8.0</strong></em></p>
<p>Essse comando ira compilar o freetds com suporte a versão 8.0 do tdserver, que é o que precisamos para conectar nas versões do SQL Server àpartir da 2000.</p>
<p>5 - Em seguida <em><strong>sudo make install</strong></em> para que ele instale o freetds no seu linux( nesse caso ubuntu 9.04 ).</p>
<p>Bom, a instalação do freetds está completa, para verificar se tudo está OK, basta dar um <em><strong>which tsql</strong></em> se ele te retornar <em><strong>/usr/local/bin/tsql</strong> </em>seu danado foi instalado corretamente, mas ainda não esta acabado. Você precisa de outros pacotes para que o freetds funcione corretamente. Eestes não precisam ser compilados na unha como fizemos com o freetds, basta que você instale-os usando o bom e velho apt-get, eles são:</p>
<p><em><strong>apt-get install tdsodbc unixodbc unixodbc-bin</strong></em></p>
<p>Uffa, ok agora eu vou conectar naquele maldido sgbd embarcado? Nãaaaaaaao ainda não, precisamos configurar alguns scripts. (Nesse momento encontrei muita confusão no material que pesquisei na internet, sendo assim resolvi não usar nenhum deles, e criar os meus pŕoprios com base na documentação do freetds. Abaixo os arquivos necessários para a configuração, com as minhas configurações, o que for opcional vai estar com um #opcional na frente.</p>
<p><strong><em>Arquivo:</em></strong> /etc/odbcinst.ini</p>
<p><em><strong>[FreeTDS]<br />
Description     = Descrição para a configuração #opcional<br />
Driver          = /usr/lib/odbc/libtdsodbc.so<br />
Driver64        = /usr/lib<br />
Setup           = /usr/lib/odbc/libtdsS.so<br />
Setup64         = /usr/lib<br />
UsageCount      = 1</strong></em></p>
<p><strong><em>Arquivo: </em></strong>/etc/freetds/freetds.conf - Se seu arquivo não estiver vázio coloque o código abaixo após  a ultima declaração do arquivo.</p>
<p><em><strong>[SQLSERVER2005] #preste atenção nisso daqui, é importante, pode ser qualquer nome.<br />
host = IP_DO_SERVIDOR<br />
port = 1433<br />
tds version = 8.0</strong></em></p>
<p>E por fim:</p>
<p><strong><em>Arquivo: </em></strong>/etc/odbc.ini</p>
<p><em><strong>[SQLSERVER2005] #pode ser qualquer nome<br />
Description     = outra descrição da configuração #opcional<br />
Driver          = FreeTDS<br />
Servername      = SQLSERVER2005 #falei para prestar atenção, isso tem que ser igual ao que você colocou lá no freetds.conf<br />
Database        = seubanco #opcional<br />
UID             = seuusuario<br />
PWD             = suasenha<br />
Port            = 1433</strong></em></p>
<p>Agora já posso conectar no danado do SQL Server? Pode, pode, pode agora pode, hehehehe. Como?</p>
<p>Se você quer só testar para saber se esta funcionando antes de começar a codificar alguma coisa, basta digitar o comando a seguir no terminal:</p>
<p><em><strong>tsql -S IP_DO_SERVIDOR -U usuario -P senha</strong></em></p>
<p>em seguida o os comandos</p>
<p><em><strong>select @@version</strong></em>&lt;enter&gt;</p>
<p><em><strong>go</strong></em>&lt;enter&gt;</p>
<p>algo assim deve lhe ser apresentado:</p>
<p><span style="color: #ff0000;"><em>Microsoft SQL Server 2005 - 9.00.4035.00 (Intel X86)<br />
Nov 24 2008 13:01:59<br />
Copyright (c) 1988-2005 Microsoft Corporation<br />
Express Edition on Windows NT 5.1 (Build 2600: Service Pack 3)</em></span></p>
<p><span style="color: #ff0000;"><span style="color: #000000;">E assim, acaba essa confusão e tu pode começar a codificar seus sistemas para SQL Server sem problema. No meu caso Rails (tem umas outras para esse, melhor olhar <a href="http://akitaonrails.com/2009/03/01/conectando-no-ms-sql-server-2005-parte-1" target="_blank">aqui</a>) e php.</span></span><br />
Espero que ajude alguém, abraço gente.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lamiscela.net/2009/07/13/ubuntu-freetds-sql-server-2005-conectado/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
